(57)【要約】【課題】近接状態の任意の外部デバイスとの接続を容易に確立することができる電子機器を実現する。【解決手段】デバイスＡは、自身のデバイスＡのユニークＩＤを含む接続要求信号を送信する。外部デバイスＢからの接続要求信号を受信した場合、デバイスＡは、受信した接続要求信号内に含まれる外部デバイスのユニークＩＤとデバイスＡのユニークＩＤとの間の大小関係を判定するための比較処理を実行する。そして、デバイスＡは、比較結果に基づいて、受信した接続要求信号の受託を示す応答信号を外部デバイスに送信する処理、または自身が送信した接続要求信号に対する受託を示す外部デバイスからの応答信号を待つ処理のいずれか一方を実行する。【選択図】図２
2010258595.tif 000002
【特許請求の範囲】
【請求項１】
近接無線通信を実行する通信モジュールと、
前記通信モジュールの固有のＩＤを含む接続要求信号を前記通信モジュールを介して送信する接続要求送信手段と、
前記通信モジュールに近接状態の外部デバイスからの接続要求信号を受信した場合、前記接続要求信号内に含まれる前記外部デバイスの固有のＩＤの値と前記通信モジュールの固有のＩＤの値とを比較してどちらのＩＤの値が大きいかを判定する比較処理を実行する比較手段と、
前記比較結果に基づいて、前記受信した接続要求信号の受託を示す応答信号を前記通信モジュールを介して前記外部デバイスに送信する処理、または前記接続要求送信手段によって送信された接続要求信号に対する受託を示す外部デバイスからの応答信号を待つ処理のいずれか一方を実行する応答制御手段とを具備することを特徴とする電子機器。
【請求項２】
前記応答制御手段によって送信される前記応答信号は前記通信モジュールの固有のＩＤを含み、前記外部デバイスからの前記応答信号は前記外部デバイスの固有のＩＤを含むことを特徴とする請求項１記載の電子機器。
【請求項３】
前記通信モジュールの固有のＩＤおよび前記外部デバイスの固有のＩＤの各々は、ベンダーＩＤと他の情報とを含む複数ビット長のビット列から構成されており、
前記比較手段は、前記通信モジュールの固有のＩＤのビット列と前記外部デバイスの固有のＩＤのビット列とを所定ビット長単位で比較する処理を、前記ベンダーＩＤが存在するビット部以外の所定ビット位置から順次実行することによって、前記外部デバイスの固有のＩＤと前記通信モジュールの固有のＩＤのどちらのＩＤの値が大きいかを判定することを特徴とする請求項１記載の電子機器。
【請求項４】
前記通信モジュールの固有のＩＤおよび前記外部デバイスの固有のＩＤの各々は、ベンダーＩＤと他の情報とを含む複数ビット長のビット列から構成され、且つ前記ベンダーＩＤは前記ビット列の上位ビット部側に位置しており、
前記比較手段は、前記通信モジュールの固有のＩＤのビット列と前記外部デバイスの固有のＩＤのビット列とを所定ビット長単位で比較する処理を前記ビット列内の最下位ビットから最上位ビットに向かう方向で順次実行することによって、前記外部デバイスの固有のＩＤと前記通信モジュールの固有のＩＤのどちらのＩＤの値が大きいかを判定することを特徴とする請求項１記載の電子機器。
【請求項５】
前記通信モジュールの固有のＩＤおよび前記外部デバイスの固有のＩＤの各々は、ベンダーＩＤ、デバイスＩＤ、およびプロダクトＩＤと他の情報とを含む複数ビット長のビット列から構成され、且つ前記ベンダーＩＤ、デバイスＩＤ、およびプロダクトＩＤは前記ビット列内に離散して存在しており、
前記比較手段は、前記通信モジュールの固有のＩＤのビット列と前記外部デバイスの固有のＩＤのビット列とを所定ビット長単位で比較する処理を、前記プロダクトＩＤの比較タイミングよりも後に前記デバイスＩＤの比較タイミングが到来し、前記デバイスＩＤの比較タイミングよりも後に前記ベンダーＩＤの比較タイミングが到来するような順序で順次実行することによって、前記外部デバイスの固有のＩＤと前記通信モジュールの固有のＩＤのどちらのＩＤの値が大きいかを判定することを特徴とする請求項１記載の電子機器。
【請求項６】
前記通信モジュールの固有のＩＤおよび前記外部デバイスの固有のＩＤの各々は、ベンダーＩＤと他の情報とを含む複数ビット長のビット列から構成されており、
前記比較手段は、乱数を発生する処理と、発生した乱数を前記外部デバイスに通知する処理と、前記通信モジュールの固有のＩＤのビット列と前記外部デバイスの固有のＩＤのビット列とを所定ビット長単位で比較する処理を前記乱数によって指定される前記ビット列内の位置から順次実行することによって、前記外部デバイスの固有のＩＤと前記通信モジュールの固有のＩＤのどちらのＩＤの値が大きいかを判定する処理とを実行することを特徴する請求項１記載の電子機器。
【請求項７】
前記通信モジュールの固有のＩＤおよび前記外部デバイスの固有のＩＤの各々は、ベンダーＩＤと他の情報とを含む複数ビット長のビット列から構成されており、
乱数を発生する乱数発生手段と、
発生した乱数によって指定される前記ビット列内の位置に基づいて前記通信モジュールの固有のＩＤのビット列を再構成する処理と、前記再構成されたビット列を前記通信モジュールの固有のＩＤとして含む接続要求信号を送信する処理とを実行する制御手段とをさらに具備し
前記比較手段は、前記再構成されたビット列の値と前記外部デバイスの固有のＩＤのビット列の値のどちらが大きいかを判定することを特徴とする請求項１記載の電子機器。
【請求項８】
電子機器に設けられた通信モジュールと外部デバイスとの間で実行される近接無線通信を制御する通信制御方法であって、
前記通信モジュールの固有のＩＤを含む接続要求信号を前記通信モジュールを介して送信する接続要求送信ステップと、
前記通信モジュールに近接状態の外部デバイスからの接続要求信号を受信した場合、前記接続要求信号内に含まれる前記外部デバイスの固有のＩＤの値と前記通信モジュールの固有のＩＤの値とを比較してどちらのＩＤの値が大きいかを判定する比較処理を実行する比較ステップと、
前記比較結果に基づいて、前記受信した接続要求信号の受託を示す応答信号を前記通信モジュールを介して前記外部デバイスに送信する処理、または前記接続要求送信手段によって送信された接続要求信号に対する受託を示す外部デバイスからの応答信号を待つ処理のいずれか一方を実行する応答制御ステップとを具備することを特徴とする通信制御方法。
【請求項９】
前記通信モジュールの固有のＩＤおよび前記外部デバイスの固有のＩＤの各々は、ベンダーＩＤと他の情報とを含む複数ビット長のビット列から構成されており、
前記比較ステップは、前記通信モジュールの固有のＩＤのビット列と前記外部デバイスの固有のＩＤのビット列とを所定ビット長単位で比較する処理を、前記ベンダーＩＤが存在するビット部以外の所定ビット位置から順次実行することによって、前記外部デバイスの固有のＩＤと前記通信モジュールの固有のＩＤのどちらのＩＤの値が大きいかを判定することを特徴とする請求項８記載の通信制御方法。
【請求項１０】
前記通信モジュールの固有のＩＤおよび前記外部デバイスの固有のＩＤの各々は、ベンダーＩＤと他の情報とを含む複数ビット長のビット列から構成され、且つ前記ベンダーＩＤは前記ビット列の上位ビット部側に位置しており、
前記比較ステップは、前記通信モジュールの固有のＩＤのビット列と前記外部デバイスの固有のＩＤのビット列とを所定ビット長単位で比較する処理を前記ビット列内の最下位ビットから最上位ビットに向かう方向で順次実行することによって、前記外部デバイスの固有のＩＤと前記通信モジュールの固有のＩＤのどちらのＩＤの値が大きいかを判定することを特徴とする請求項８記載の通信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はピアツーピア形式で外部デバイスとの近接無線通信を実行する電子機器および同機器に適用される通信制御方法に関する。
【背景技術】
【０００２】
近年、ＮＦＣのような無線通信が利用され始めている。ユーザは、ＩＣカードをホスト装置のリーダ／ライタ部にかざすといった操作を行うだけで、認証処理、課金等のための通信を容易に行うことが出来る。
【０００３】
最近では、デバイス間の高速なデータ交換を可能にする新たな近接無線通信技術も開発され始めている。
【０００４】
特許文献１には、ピアツーピアトンネリングプロトコル（ＰＰＴＰ）を用いて、ＶＰＮ接続の確立または切断に関する処理を実行するシステムが開示されている。このシステムでは、複数のＶＰＮ装置によってＶＰＮが実現されている。各ＶＰＮ装置はプレフィクス処理部を備えている。プレフィクス処理部は、２つのＶＰＮ装置の中から、ＶＰＮプレフィックスを決定する処理を実行する側のＶＰＮ装置を、優位ノードとして決定する。優位ノードの決定には、２つのＶＰＮ装置それぞれのノードＩＤが用いられる。ノードＩＤの大きい方のＶＰＮ装置が、優位ノードとして決定される。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００６−２４５６７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１の技術はネットワークを前提としたものであり、携帯電話、コンピュータ、ＴＶといったデバイス間の近接無線通信については考慮されていない。
【０００７】
デバイス間の近接無線通信を有用なものとするためには、携帯電話、コンピュータ、ＴＶといった様々なデバイス同士の組み合わせに適用対処できるようにすることが要求される。もし、個々のデバイスに予めホスト（マスタ）または端末（スレーブ）といった役割を固定的に設定すると、ユーザによって近接状態に設定される２つのデバイスの組み合わせによっては、デバイス間の接続を確立できなくなる可能性がある。
【０００８】
よって、対等な関係にある任意の２つのデバイス間の接続を確立することができる新たな機能の実現が必要となる。
【０００９】
本発明は上述の事情を考慮してなされたものであり、近接状態の任意の外部デバイスとの接続を容易に確立することができる電子機器および通信制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
上述の課題を解決するために、本発明の電子機器は、近接無線通信を実行する通信モジュールと、前記通信モジュールの固有のＩＤを含む接続要求信号を前記通信モジュールを介して送信する接続要求送信手段と、前記通信モジュールに近接状態の外部デバイスからの接続要求信号を受信した場合、前記接続要求信号内に含まれる前記外部デバイスの固有のＩＤの値と前記通信モジュールの固有のＩＤの値とを比較してどちらのＩＤの値が大きいかを判定する比較処理を実行する比較手段と、前記比較結果に基づいて、前記受信した接続要求信号の受託を示す応答信号を前記通信モジュールを介して前記外部デバイスに送信する処理、または前記接続要求送信手段によって送信された接続要求信号に対する受託を示す外部デバイスからの応答信号を待つ処理のいずれか一方を実行する応答制御手段とを具備することを特徴とする。
【００１１】
また、本発明は、電子機器に設けられた通信モジュールと外部デバイスとの間で実行される近接無線通信を制御する通信制御方法であって、前記通信モジュールの固有のＩＤを含む接続要求信号を前記通信モジュールを介して送信する接続要求送信ステップと、前記通信モジュールに近接状態の外部デバイスからの接続要求信号を受信した場合、前記接続要求信号内に含まれる前記外部デバイスの固有のＩＤの値と前記通信モジュールの固有のＩＤの値とを比較してどちらのＩＤの値が大きいかを判定する比較処理を実行する比較ステップと、前記比較結果に基づいて、前記受信した接続要求信号の受託を示す応答信号を前記通信モジュールを介して前記外部デバイスに送信する処理、または前記接続要求送信手段によって送信された接続要求信号に対する受託を示す外部デバイスからの応答信号を待つ処理のいずれか一方を実行する応答制御ステップとを具備することを特徴とする。
【発明の効果】
【００１２】
本発明によれば、近接状態の任意の外部デバイスとの接続を容易に確立することができる。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施形態に係る電子機器と外部デバイスとの間の接続を示すブロック図。
【図２】同実施形態の電子機器と外部デバイスとの間で実行される接続手順を示す図。
【図３】同実施形態の電子機器によって実行されるユニークＩＤ比較処理の第１の例を示す図。
【図４】同実施形態の電子機器によって実行されるユニークＩＤ比較処理の第２の例を示す図。
【図５】同実施形態の電子機器によって実行されるユニークＩＤ比較処理の第３の例を示す図。
【図６】同実施形態の電子機器のシステム構成を示すブロック図。
【図７】同実施形態の電子機器と外部デバイスとの間で実行される近接無線通信の例を示す図。
【図８】同実施形態の電子機器に適用される、近接無線通信を制御するためのソフトエアアーキテクチャの例を示す図。
【図９】図８のソフトウェァアーキテクチャ内に含まれるＰＣＬの構成例を示すブロック図。
【図１０】同実施形態の電子機器と外部デバイスとの間で実行される接続手順の具体例を示す図。
【図１１】同実施形態の電子機器によって実行される通信制御処理手順の例を示すフローチャート。
【発明を実施するための形態】
【００１４】
以下、図面を参照して、本発明の実施形態を説明する。
【００１５】
図１は、本発明の一実施形態に係る電子機器の構成を示している。この電子機器は、例えば、携帯機器（例えば、携帯電話機、ＰＤＡ、オーディオプレーヤ等）、パーソナルコンピュータ、またはコンシューマ機器（例えば、ＴＶ、ビデオレコーダ等）として実現される。この電子機器は近接無線通信を実行する通信モジュールを備えており、近接無線機能を有する他のデバイス（外部デバイス）との無線接続を確立し、そして外部デバイスとの近接無線通信をピアツーピア形式で実行する。図１のデバイスＡは本実施形態の電子機器に相当し、図１のデバイスＢは本実施形態の電子機器と同等の機能を有する外部デバイスに相当する。デバイスＡ，Ｂは互いに対等な関係にあるデバイスである。
【００１６】
デバイスＡおよびデバイスＢの各々には、それらデバイスを一意に識別するための識別情報（ＩＤ）が予め割り当てられている。すなわち、デバイスＡには、デバイスＡの固有のＩＤ（ユニークＩＤ：ＵＩＤ）が格納されており、デバイスＢには、デバイスＢの固有のＩＤ（ユニークＩＤ：ＵＩＤ）が格納されている。デバイスＡ，ＢそれぞれのユニークＩＤは、例えば、各デバイスが通信相手のデバイスを識別するための識別情報等として使用し得る。本実施形態では、このユニークＩＤは、接続確立処理手順に関する主導権を持つ側のデバイスを一意に決定するために利用される。
【００１７】
デバイスＡ，Ｂの各々は、近接された相手のデバイスとの無線接続を確立できるようにするために、接続要求を無線信号によって送信する機能と、受信した接続要求の受託を示す応答を相手のデバイスに無線信号によって送信する機能の双方を有している。
【００１８】
さらに、デバイスＡ，Ｂの各々は、接続確立処理手順に関する主導権を持つ側のデバイスを一意に決定するための役割決定機能を有している。近接状態に設定された２つのデバイスの内のどちらのデバイスが主導権を持つかは、それら２つのデバイスのユニークＩＤの大小比較の結果に基づいて自動的に決定される。ユニークＩＤは、個々のデバイスが予め有している情報であり、しかもユニークＩＤは個々のデバイス毎に異なる（同一となることのない）ユニークな情報である。したがって、どちらのユニークＩＤの値の方が大きいかを判定する比較処理を用いることにより、デバイスＡ，Ｂが互いに近接状態に設定された時点で、主導権を持つ側のデバイスを一意に決定する処理を即座に実行することが可能となる。
【００１９】
デバイスＡ，Ｂの各々は、上述の役割決定機能を実現するために、ＵＩＤ比較部３０３を備えている。ＵＩＤ比較部３０３は、通信相手のデバイスのユニークＩＤと自身のデバイスのユニークＩＤとの間の大小関係を判定するための比較処理を実行する。すなわち、この比較処理は、通信相手のデバイスのユニークＩＤの値と自身のデバイスのユニークＩＤの値とを比較してどちらのＩＤの値が大きいかを判定する。このＵＩＤ比較部３０３による比較結果は、接続確立処理手順に関する主導権を持つ側のデバイスを一意に決定するために利用される。例えば、ユニークＩＤの値の大きい方のデバイスが接続確立処理手順に関する主導権を握り得る。
【００２０】
ところで、デバイス間の近接無線通信を有用なものとするためには、携帯電話、コンピュータ、ＴＶといった様々なデバイス同士の組み合わせに対処できるようにすることが要求される。このため、近接無線通信においては、個々のデバイスに予めホスト（マスタ）または端末（スレーブ）といった役割を固定的に設定するのではなく、対等な関係にある任意の２つのデバイス間の接続を確立するための仕組みが必要である。
【００２１】
任意の２つのデバイス間の接続を確立できるようにするために、本実施形態では、各デバイスが、接続要求を送信する機能と接続要求に対して応答する機能の双方を備えている。しかし、近接状態の２つのデバイスがそれぞれ接続要求を送信すると、接続要求が重複して発生することになる。２つのデバイス間の接続を確立する処理では、一方のデバイスから他方のデバイスに接続要求を送信し、他方のデバイスから一方のデバイスに応答を返せば十分である。したがって、２つのデバイスのどちらか一方の接続要求を有効にするように調停する必要がある。
【００２２】
本実施形態では、上述の役割決定機能により、接続確立処理手順に関する主導権を与えるデバイスを一意に決定することができる。よって、任意のデバイス同士を近接させるだけでそれらデバイス間の接続を容易に確立することができる。
【００２３】
次に、図２を参照して、デバイスＡ，Ｂによって実行される接続確立処理のシーケンスを説明する。
【００２４】
デバイスＡ，Ｂの各々は、接続要求信号を送信することができる。すなわち、デバイスＡは、デバイスＡ内の通信モジュールを介して接続要求信号を送信する。接続要求信号は、例えば、所定時間間隔で繰り返し送信される。この接続要求信号は、デバイスＡのユニークＩＤつまりデバイスＡ内の通信モジュールのユニークＩＤを含み得る。
【００２５】
同様に、デバイスＢは、デバイスＢ内の通信モジュールを介して接続要求信号を送信する。この接続要求信号も、例えば、所定時間間隔で繰り返し送信される。この接続要求信号は、デバイスＢのユニークＩＤつまりデバイスＢ内の通信モジュールのユニークＩＤを、送信元デバイスのＩＤとして含み得る。
【００２６】
デバイスＡ，Ｂが互いに近接している場合、デバイスＡはデバイスＢからの接続要求信号を受信することができ、またデバイスＢもデバイスＡからの接続要求信号を受信することができる。
【００２７】
デバイスＢからの接続要求信号を受信した場合、デバイスＡは、受信した接続要求信号に含まれるデバイスＢのユニークＩＤの値とデバイスＡ自身のユニークＩＤの値とを比較して、ユニークＩＤの大小関係、つまりどちらのＩＤの値が大きいかを判定する比較処理を実行する。各ユニークＩＤは、例えば３２ビット長、４８ビット長または６４ビット長のビット列（バイナリーデータ）から構成されている。比較処理では、例えば、デバイスＡ自身のユニークＩＤの値とデバイスＢのユニークＩＤの値とを所定ビット長単位（例えば、１ビット単位、２ビット単位または８ビット単位）で比較する処理が実行される。この場合、例えば、比較対象のビット部はビット列の最上位ビットから最下位ビットに向けて順次更新される。
【００２８】
そして、デバイスＡは、比較結果に基づいて、受信した接続要求信号の受託を示す応答信号を通信モジュールを介してデバイスＢに送信する処理を実行するか否かを決定する。例えば、デバイスＡ自身のユニークＩＤの値がデバイスＢのユニークＩＤの値よりも小さい場合、デバイスＡは、受信した接続要求信号の受託を示す応答信号をデバイスＢに送信する。一方、デバイスＡ自身のユニークＩＤの値がデバイスＢのユニークＩＤの値よりも大きい場合、デバイスＡは、受信した接続要求信号の受託を示す応答信号を送信せずに、自身の送信した接続要求信号の受託を示すデバイスＢからの応答信号を待つ処理を実行する。
【００２９】
デバイスＢもデバイスＡと同じ比較処理を実行する。すなわち、デバイスＡからの接続要求信号を受信した場合、デバイスＢは、受信した接続要求信号に含まれるデバイスＡのユニークＩＤとデバイスＢ自身のユニークＩＤとを間の大小関係を判定するための比較処理を実行する。そして、デバイスＢは、比較結果に基づいて、受信した接続要求信号の受託を示す応答信号を通信モジュールを介してデバイスＡに送信するか否かを決定する。例えば、デバイスＢ自身のユニークＩＤの値がデバイスＡのユニークＩＤの値よりも小さい場合、デバイスＢは、受信した接続要求信号の受託を示す応答信号をデバイスＡに送信する。一方、デバイスＢ自身のユニークＩＤの値がデバイスＡのユニークＩＤの値よりも大きい場合、デバイスＢは、受信した接続要求信号の受託を示す応答信号を送信しない。
【００３０】
ここで、デバイスＡのユニークＩＤの値の方がデバイスＢのユニークＩＤの値よりも大きい場合を想定する。この場合、デバイスＡからデバイスＢには応答信号は送信されず、デバイスＢからデバイスＡにのみ応答信号が送信される。この結果、デバイスＡから送信された接続要求のみが有効となる。応答信号は、その応答信号を送信したデバイスのユニークＩＤを含み得る。
【００３１】
デバイスＡは、デバイスＢから応答信号を受信した時、デバイスＡ自身の送信した接続要求が受け入れられたと認識する。これにより、デバイスＡとデバイスＢとの間の接続を正しく確立することができる。
【００３２】
このように、本実施形態では、自身のユニークＩＤと外部デバイスのユニークＩＤとの間の大小比較の結果に基づいて、接続要求信号の受託を示す応答信号を、接続要求信号を送信したデバイスに送信するか否かが決定される。よって、たとえ接続要求が重複して発生しても、ユニークＩＤの値が大きい方のデバイスからの接続要求のみを有効にすることができ、接続確立処理の手順の複雑化を招くことなく、２つのデバイス間の接続を容易且つ迅速に確立することができる。したがって、ユーザが近接無線通信機能をそれぞれ有する任意の２つのデバイス同士をタッチした時、つまり２つのデバイス同士を近づけた時、それら２つのデバイス間の接続が直ぐに確立される。
【００３３】
また、本実施形態では、デバイスそれぞれのユニークＩＤの比較結果を用いて応答信号を送信するか否かを決定しているので、比較のための特別な値を新たに生成することなく、応答信号を送信するか否かを容易に決定することができる。このため、応答信号を送信するか否かを決定する処理に起因する接続確立処理の遅延もほとんど生じない。
【００３４】
個々のデバイスのユニークＩＤは、例えば、ベンダーＩＤと他の特定の情報等とを含む、３２ビット長、４８ビット長または６４ビット長のビット列から構成し得る。
【００３５】
ベンダーＩＤがビット列の上位ビット部側に位置する場合、もし２つのユニークＩＤの値を単純に比較すると、それらユニークＩＤ間の比較結果は、ベンダーＩＤの値、つまり各デバイスの製造者のＩＤに大きく影響される可能性がある。このため、比較的大きな値のベンダーＩＤが割り当てられた特定のベンダーによって製造されたデバイスが接続処理に関する主導権を握るという、公平性に欠ける事態が発生し得る。
【００３６】
そこで、本実施形態では、大小比較の結果がベンダーＩＤの値になるべく依存しないように改良された比較処理が実行される。
【００３７】
以下、本実施形態の電子機器によって実行可能なユニークＩＤ比較処理について説明する。
【００３８】
まず、図３を参照して、ユニークＩＤ比較処理の第１の例について説明する。
【００３９】
図３では、ユニークＩＤのビット列（バイナリーデータ）が、ベンダーＩＤ（製造社ＩＤ）、デバイスＩＤ（機器ＩＤ）、プロダクトＩＤ（製品ＩＤ）と、他の情報とを含む場合を想定している。ベンダーＩＤは、デバイスの製造社（ベンダー）を識別する情報である。デバイスＩＤは、デバイスのカテゴリ等を識別する情報である。プロダクトＩＤは、デバイスの製品名のような製品識別情報である。他の情報は、例えば、その製品に割り当てられたシリアル番号などを含み得る。
【００４０】
ベンダーＩＤ、デバイスＩＤ、プロダクトＩＤそれぞれが存在するユニークＩＤ内の位置は、予め決められている。図３では、ベンダーＩＤ、デバイスＩＤ、プロダクトＩＤは、ユニークＩＤのビット列中の上位ビット部側に偏って存在している場合が例示されている。
【００４１】
本実施形態では、デバイスＡ内のユニークＩＤ比較部は、ベンダーＩＤにできるだけ影響を受けずにユニークＩＤ間の大小関係を一意に判定できるようにするために、ベンダーＩＤが割り当てられた領域以外の他の領域内の所定のビット位置をユニークＩＤのビット列のＭＳＢであると見なした状態で、ユニークＩＤ間の大小比較を実行する。より具体的には、ユニークＩＤ比較部は、デバイスＡのユニークＩＤのビット列とデバイスＢのユニークＩＤのビット列とを所定ビット長単位で比較する処理を、前記ベンダーＩＤが存在するビット部以外の所定ビット位置から順次実行して、デバイスＡのユニークＩＤとデバイスＢのユニークＩＤとの間の大小関係を判定する。この比較処理は、デバイスＡのユニークＩＤおよびデバイスＢのユニークＩＤの各々のビット列の並びを、上述の所定ビット位置がＭＳＢとなるように再構成し、再構成されたデバイスＡのユニークＩＤの値と再構成されたデバイスＢのユニークＩＤの値とを比較する処理と等価である。ユニークＩＤ比較処理は、各ユニークＩＤを数値と見なして、ユニークＩＤ間の大小関係を一意に判定する処理である。よって、あるルールに従って各ユニークＩＤの値を評価できれば十分であるので、ユニークＩＤのどのビット位置をＭＳＢとして認識しても問題はない。
【００４２】
なお、ベンダーＩＤ、デバイスＩＤ、プロダクトＩＤのいずれも割り当てられていない領域内の所定ビット位置、つまり上述のシリアル番号のような他の情報が割り当てられている領域内の所定ビット位置をＭＳＢとして見なし、この所定ビット位置から比較処理を順次実行しても良い。これにより、ベンダーＩＤによる影響のみならず、デバイスＩＤによる影響、およびプロダクトＩＤによる影響をも低減することができる。
【００４３】
図３の（ａ）は、ユニークＩＤのビット列の最下位ビットを所定ビット位置（ＭＳＢ）として使用する場合の例である。ユニークＩＤ比較部は、デバイスＡのユニークＩＤのビット列とデバイスＢのユニークＩＤのビット列とを所定ビット長単位で比較する処理を、ユニークＩＤのビット列内の最下位ビットから最上位ビットに向かう方向で順次実行する。この比較処理は、デバイスＡのユニークＩＤおよびデバイスＢのユニークＩＤの各々のビット列の並びが逆順になるように各ビット列を再構成し、再構成されたデバイスＡのユニークＩＤの値と再構成されたデバイスＢのユニークＩＤの値とを比較する処理と等価である。この比較処理により、ベンダーＩＤ、デバイスＩＤ、プロダクトＩＤが下位ビット部側に位置していると見なした状態で、デバイスＡのユニークＩＤの値とデバイスＢのユニークＩＤの値とを比較することができる。よって、ユニークＩＤ間の大小比較の結果が、ベンダーＩＤ、デバイスＩＤ、プロダクトＩＤの各々によって影響を受ける度合いを軽減することができる。また、ベンダーＩＤ、デバイスＩＤ、プロダクトＩＤがこの順でＭＳＢ側から配置されている場合においては、比較処理では、プロダクトＩＤ、デバイスＩＤ、ベンダーＩＤがこの順で比較されていくので、ベンダーＩＤによる影響の度合いを最も低減することが可能となる。
【００４４】
図３の（ｂ）は、ベンダーＩＤ、デバイスＩＤ、プロダクトＩＤのいずれも存在しない特定の中位ビット位置、例えば、上述の他の情報を含む領域の先頭ビット位置を、上述の所定ビット位置（ＭＳＢ）として使用する場合の例である。ユニークＩＤ比較部は、デバイスＡのユニークＩＤのビット列とデバイスＢのユニークＩＤのビット列とを所定ビット長単位で比較する処理を、ユニークＩＤのビット列内の特定中位ビット位置から順次実行する。具体的には、ユニークＩＤ比較部は、デバイスＡのユニークＩＤのビット列とデバイスＢのユニークＩＤのビット列とを所定ビット長単位で比較する処理を、特定中位ビット位置から最下位ビットに向かう方向で順次実行する。最下位ビットまでの比較処理が終了した後は、ユニークＩＤ比較部は、再上位ビットから特定中位ビット位置に向かう方向で比較処理を順次実行する。
【００４５】
次に、図４を参照して、ユニークＩＤ比較処理の第２の例について説明する。
【００４６】
図４では、ベンダーＩＤ、デバイスＩＤ、プロダクトＩＤが、ユニークＩＤのビット列内に離散して存在している場合が想定されている。この場合、プロダクトＩＤ同士の比較よりも後にデバイスＩＤ同士の比較が行われ、デバイスＩＤ同士の比較よりも後にベンダーＩＤ同士の比較が行われるように、ユニークＩＤ間の比較が行われる。
【００４７】
具体的には、ユニークＩＤ比較部は、デバイスＡのユニークＩＤのビット列とデバイスＢのユニークＩＤのビット列とを所定ビット長単位で比較する処理を、プロダクトＩＤの比較タイミングよりも後にデバイスＩＤの比較タイミングが到来し、デバイスＩＤの比較タイミングよりも後にベンダーＩＤの比較タイミングが到来するような順序で順次実行することによって、デバイスＡのユニークＩＤとデバイスＢのユニークＩＤとの間の大小関係を判定する。
【００４８】
この結果、ベンダーＩＤ、デバイスＩＤ、プロダクトＩＤの中では、比較結果に対する依存度が高いのはプロダクトＩＤとなり、比較結果に対する依存度が最も低いのはベンダーＩＤとなる。
【００４９】
次に、図５を参照して、ユニークＩＤ比較処理の第３の例について説明する。
【００５０】
ここでは、ユニークＩＤのビット列内の任意の桁を指定可能な乱数が用いられる。図５の（ａ）においては、この乱数によってユニークＩＤのビット列内の任意のビット位置が指定され、この指定されるユニークＩＤ内のビット位置から比較処理が順次実行される。すなわち、ＵＩＤ比較部内の乱数発生器は、接続処理時に乱数を発生する。ＵＩＤ比較部は、発生された乱数を外部デバイスに通知すると共に、乱数によって指定されるユニークＩＤ内のビット位置がユニークＩＤの最上位ビットと見なされるように、デバイスＡのユニークＩＤのビット列とデバイスＢのユニークＩＤのビット列とを所定ビット長単位で比較する処理を、乱数によって指定されるユニークＩＤのビット列内の位置から順次実行する。例えば、乱数がＸである場合には、ユニークＩＤ比較部は、デバイスＡのユニークＩＤのビット列とデバイスＢのユニークＩＤのビット列とを所定ビット長単位で比較する処理を、ユニークＩＤのビット列の先頭からＸ番目のビット位置から最下位ビットに向かう方向で順次実行する。最下位ビットまでの比較処理が終了した後は、ユニークＩＤ比較部は、再上位ビットからＸ番目のビット位置に向かう方向で比較処理を順次実行する。
【００５１】
図５の（ａ）で示される方法を使用する場合には、乱数Ｘの値を２つのデバイス間で共有するための仕組みが必要となる。このため、ＵＩＤ比較部は、発生された乱数を外部デバイスに通知する処理を実行することが必要となる。
【００５２】
図５の（ｂ）では、デバイスＡ，Ｂの各々が、乱数を発生し、その乱数に基づいて自身のユニークＩＤを再構築する。
【００５３】
すなわち、デバイスＡは、デバイスＡ内の乱数発生器によって発生された乱数に基づいてデバイスＡのユニークＩＤを再構築する。例えば、乱数がＸである場合には、デバイスＡは、ユニークＩＤのビット列のＭＳＢからＸ番目のビットまでの第１のビット部が下位ビット側に位置し、Ｘ＋１番目のビットからＬＳＢまでの第２のビット部が上位ビット側に位置するように、第１のビット部と第２のビット部とを入れ替える。これにより、デバイスＡのユニークＩＤが再構築される。デバイスＡは、再構築されたデバイスＡのユニークＩＤを、自身のユニークＩＤとしてデバイスＢに送信する。例えば、デバイスＡから送信される接続要求信号は、再構築されたデバイスＡのユニークＩＤを当該接続要求信号の送信元デバイスのＩＤとして含み得る。
【００５４】
同様に、デバイスＢも、デバイスＢ内の乱数発生器によって発生された乱数に基づいてデバイスＢのユニークＩＤを再構築する。デバイスＢは、再構築されたデバイスＢのユニークＩＤを、自身のユニークＩＤとしてデバイスＡに送信する。例えば、デバイスＢから送信される接続要求信号は、再構築されたデバイスＢのユニークＩＤを当該接続要求信号の送信元デバイスのＩＤとして含み得る。
【００５５】
デバイスＡ，Ｂの各々は、再構築された自身のユニークＩＤと、通信相手のデバイスから接続要求信号に含まれる、通信相手のデバイスの再構築されたユニークＩＤとの間の大小関係を判定する比較処理を実行する。
【００５６】
図５の（ｂ）の方法を使用する場合、デバイスＡ，Ｂの各々は再構築されたユニークＩＤを自身を識別するためのＩＤとして使用し得、また相手のデバイスから送信される再構築されたユニークＩＤを相手を識別するためのＩＤとして使用し得る。
【００５７】
すなわち、デバイスＡは、再構築されたデバイスＡのユニークＩＤを送信元デバイスのＩＤとして含む接続要求信号を送信し、デバイスＢは、再構築されたデバイスＢのユニークＩＤを送信元デバイスのＩＤとして含む接続要求信号を送信すればよい。これにより、再構築されたデバイスＡのユニークＩＤはデバイスＡのユニークＩＤとしてデバイスＢに通知され、また再構築されたデバイスＢのユニークＩＤはデバイスＢのユニークＩＤとしてデバイスＡに通知される。デバイスＡからデバイスＢへの応答信号には、再構築されたデバイスＢのユニークＩＤを送信先デバイスのＩＤとして含ませることができる。同様に、デバイスＢからデバイスＡへの応答信号には、再構築されたデバイスＡのユニークＩＤを送信先デバイスのＩＤとして含ませることができる。
【００５８】
したがって、デバイスＡ，Ｂ間で同一の乱数を共有することなく、再構築されたユニークＩＤをデバイスＡ，Ｂ間で交換するだけで、効率よく比較処理を実行することが出来る。
【００５９】
なお、デバイスＡ，Ｂの一方のみが、自身のユニークＩＤを再構築して通信相手のデバイスに送信するようにしてもよい。
【００６０】
また、これら再構築されたユニークＩＤはデバイスＡ，Ｂ間の接続を確立するための処理の中でのみ自身および通信相手を識別するためのＩＤとして使用してもよい。この場合、接続確立後に実行されるネゴシエーション処理によって、本来のユニークＩＤをデバイスＡ，Ｂ間で交換するようにしても良い。
【００６１】
次に、図６を参照して、本実施形態の電子機器のシステム構成例を説明する。
【００６２】
この電子機器１０は、システム制御部１０１、ＲＯＭ１０２、ＲＡＭ１０３、近接無線通信デバイス１０４、電源制御部１０５、ＡＣアダプタ１０６、およびバッテリ１０７を備える。
【００６３】
システム制御部１０１は、電子機器１０内の各部の動作を制御する。システム制御部１０１は、ＣＰＵ１０１ａを備え、ＲＯＭ１０２、ＲＡＭ１０３、近接無線通信デバイス１０４、および電源制御部１０５に接続される。
【００６４】
ＣＰＵ１０１ａは、ＲＯＭ１０２に格納された命令群およびデータをＲＡＭ１０３へロードし、必要な処理を実行するプロセッサである。ＲＡＭ１０３には、近接無線通信を制御するための近接無線通信制御プログラム１０３ａがロードされている。ＣＰＵ１０１ａは、ＲＡＭ１０３にロードされた近接無線通信制御プログラム１０３ａを実行して、近接無線通信デバイス１０４を制御する。
【００６５】
近接無線通信デバイス１０４は、近接無線通信を実行する通信モジュールである。近接無線通信デバイス１０４は、近接無線通信デバイス１０４から所定の距離内に存在する、近接無線通信機能を有する他のデバイス（外部デバイス）との無線接続を確立し、そしてファイルのようなデータの伝送を開始する。近接無線通信デバイス１０４と外部デバイスとの間の近接無線通信は、ピアツーピア形式で実行される。通信可能距離は例えば３ｃｍである。近接無線通信デバイス１０４と外部デバイスとの間の無線接続は、近接無線通信デバイス１０４と外部デバイスとが近接状態である場合、つまり近接無線通信デバイス１０４と外部デバイスとの間の距離が通信可能距離（例えば３ｃｍ）以内に接近した場合にのみ可能となる。近接無線通信デバイス１０４と外部デバイスとが通信可能距離以内に接近した時、近接無線通信デバイス１０４と外部デバイスとの間の無線接続が確立される。そして、例えば、ユーザによって明示的に指定されたデータファイル、または予め決められた同期対象データファイル等のデータの伝送が近接無線通信デバイス１０４と外部デバイスとの間で実行される。
【００６６】
近接無線通信においては、誘導電界が用いられる。近接無線通信方式としては、例えばTransfer JETを使用し得る。Transfer JETは、UWBを利用した近接無線通信方式であり、高速データ転送を実現することができる。
【００６７】
近接無線通信デバイス１０４はアンテナ１０４ｂに接続されている。アンテナ１０４ｂはカプラと称される電極であり、誘導電界を用いた無線信号により、外部デバイスに対するデータの送受信を行う。外部デバイスがアンテナ１０４ｂから通信可能距離（例えば３ｃｍ）以内の範囲内に接近した場合、近接無線通信デバイス１０４および外部デバイスそれぞれのアンテナ（カプラ）間が誘導電界によって結合され、これによって近接無線通信デバイス１０４と外部デバイスとの間の無線通信が実行可能となる。なお、近接無線通信デバイス１０４およびアンテナ１０４ｂは、一つのモジュールとして実現し得る。
【００６８】
電源制御部１０５は、ＡＣアダプタ１０６を介して外部から供給される電力、またはバッテリ１０７から供給される電力を用いて、電子機器１０内の各部に電力を供給する。換言すれば、電子機器１０は、ＡＣ商用電源のような外部電源、またはバッテリ１０７によって駆動される。ＡＣアダプタ１０６は電子機器１０内に設けることも出来る。
【００６９】
図７には、２つのデバイス間で実行される近接無線通信の様子が示されている。
【００７０】
ここでは、デバイスＡが携帯電話から構成され、デバイスＢがポータブルコンピュータから構成されている場合を想定する。ユーザは、例えば、デバイスＡをデバイスＢに近接させるという操作（タッチ操作）を行うことにより、デバイスＡ，Ｂ間のデータ転送を開始させることができる。デバイスＡ，Ｂ間のデータ転送は、デバイスＡ，Ｂが互いに近接したことをトリガに実行される。
【００７１】
次に、図８を参照して、近接無線通信デバイス１０４を用いて実行される近接無線通信を制御するためのソフトウェアアーキテクチャを説明する。
【００７２】
図８のソフトウェアアーキテクチャは近接無線通信を制御するためのプロトコルスタックの階層構造を示している。プロトコルスタックは、物理層（ＰＨＹ）、コネクション層（ＣＮＬ）、プロトコル変換層（ＰＣＬ）、アプリケーション層から構成されている。例えば、コネクション層（ＣＮＬ）、プロトコル変換層（ＰＣＬ）、アプリケーション層は通信制御プログラム１０３ａによって実現し得る。
【００７３】
物理層（ＰＨＹ）は物理的なデータ転送を制御する層であり、ＯＳＩ参照モデル内の物理層に対応する。物理層（ＰＨＹ）の一部の機能または全ての機能は、近接無線通信デバイス１０４内のハードウェアを用いて実現することもできる。
【００７４】
物理層（ＰＨＹ）はコネクション層（ＣＮＬ）からのデータを無線信号に変換する。コネクション層（ＣＮＬ）はＯＳＩ参照モデル内のデータリンク層およびトランスポート層に対応しており、近接状態に設定されている近接無線通信デバイス１０４と外部デバイスとの間の接続（ＣＮＬ接続）を確立し、データを伝送する処理を実行する。
【００７５】
プロトコル変換層（ＰＣＬ）は、ＯＳＩ参照モデル内のセッション層およびプレゼンテーション層に対応しており、アプリケーション層と、デバイスＡ，Ｂ間の接続の確立および解除を制御するためのコネクション層（ＣＮＬ）との間に位置する。プロトコル変換層（ＰＣＬ）は、アプリケーション層内の各アプリケーション（通信プログラム）の管理と、セッション制御とを実行する。セッションは、電子機器１０のアプリケーション層と外部デバイスのアプリケーション層との間の通信路に相当する。
【００７６】
アプリケーション層は、各種アプリケーションプロトコル（例えば、ＳＣＳＩ、ＯＢＥＸ、他の汎用プロトコル等）に対応した各種通信プログラム（アプリケーション）を含む。
【００７７】
次に、図９を参照して、プロトコル変換層（ＰＣＬ）の機能構成について説明する。
【００７８】
図９に示されているように、プロトコル変換層（ＰＣＬ）は、通信制御部３０１、モード管理部３０２、およびＵＩＤ比較部３０３を備えている。
【００７９】
プロトコル変換層（ＰＣＬ）は３つのモード（プロアクティブモード、リアクティブモード、フレキシブルモード）を有しており、これら３つのモードの内の１つのモードで動作し得る。
【００８０】
プロアクティブモードはいわゆるマスタとして機能するためのモードであり、プロアクティブモードのデバイスは、通信相手のデバイスを制御してデバイス間のデータ転送のようなサービスを実行することができる。リアクティブモードはいわゆるスレーブとして機能するためのモードであり、リアクティブモードのデバイスは、通信相手のデバイスの制御の下、デバイス間のデータ転送のようなサービスを実行することができる。
【００８１】
外部電源によって駆動できない携帯電話のようなポータブルデバイスのデフォルトのモードは、その電力消費を低減するために、リアクティブモードに決定されている。ユーザによってポータブルデバイスのあるアプリケーションが操作された時、そのポータブルデバイスは、リアクティブモードからプロアクティブモードに自動的に遷移する。
【００８２】
プロアクティブモードに設定されたデバイスは、接続要求信号Ｃ_Ｒｅｑを送信する。一方、リアクティブモードのデバイスは接続要求信号Ｃ_Ｒｅｑを送信しないので、電力消費は比較的少ない。
【００８３】
フレキシブルモードは、通信相手のデバイスのモード（プロアクティブモードまたはリアクティブモード）に応じて自身のモードを自動的にプロアクティブモードまたはリアクティブモードに遷移させることが出来るモードである。フレキシブルモードのデバイスは、通信相手のデバイスがプロアクティブモードであればリアクティブモードに遷移し、また通信相手のデバイスがリアクティブモードであればプロアクティブモードに遷移する。プロアクティブモードまたはリアクティブモードへの遷移は、例えば、デバイス間の接続が確立された後に実行される。
【００８４】
ＡＣアダプタ電源のような外部電源によって駆動可能な、パーソナルコンピュータのようなデバイスのデフォルトのモードはフレキシブルモードである。フレキシブルモードのデバイスは、接続要求信号Ｃ_Ｒｅｑを送信する。これにより、ユーザが携帯電話のアプリケーションを何等操作せずにその携帯電話をパーソナルコンピュータ（フレキシブルモードのデバイス）に近接させた場合でも、それらデバイス間の接続を確立でき、パーソナルコンピュータの制御の下、データファイルの転送のようなサービスをユーザに提供することができる。
【００８５】
電子機器１０のＰＣＬがフレキシブルモードまたはプロアクティブモードの場合、通信制御部３０１のＣ_Ｒｅｑ処理部３１１は、ＣＮＬを制御して、接続要求信号Ｃ_Ｒｅｑを送信する処理を実行する。ＰＣＬのモードは、モード管理部３０２によって管理されている。
【００８６】
ＣＮＬは、Ｃ_Ｒｅｑ処理部３１１からのＣ_Ｒｅｑ送信要求に応じて、電子機器１０のユニークＩＤつまり近接無線通信デバイス１０４のユニークＩＤを送信元デバイスのＩＤとして含む接続要求信号Ｃ_Ｒｅｑを、近接無線通信デバイス１０４を介して送信する。
【００８７】
ＣＮＬによって受信された外部デバイスからの接続要求信号Ｃ_Ｒｅｑに含まれる当該外部デバイスのユニークＩＤは、通信制御部３０１を介してＵＩＤ比較部３０３に送られる。ＵＩＤ比較部３０３は、電子機器１０のユニークＩＤの値と外部デバイスのユニークＩＤの値とを比較してどちらのユニークＩＤの値が大きいかを判定するための比較処理を実行する。この比較処理は、例えば、図３乃至図５で説明した処理を用いて実行することができる。
【００８８】
通信制御部３０１のＣ_Ａｃｃ処理部３１２は、ＵＩＤ比較部３０３による比較処理の結果に基づいて、受信した接続要求信号Ｃ_Ｒｅｑの受託を示す応答信号Ｃ_Ａｃｃを近接無線通信デバイス１０４を介して外部デバイスに送信するか否かを決定する。例えば、電子機器１０のユニークＩＤが外部デバイスのユニークＩＤよりも小さいならば、Ｃ_Ａｃｃ処理部３１２は、外部デバイスからの接続要求信号Ｃ_Ｒｅｑを有効にするために、ＣＮＬを制御して、応答信号Ｃ_Ａｃｃを、接続要求信号Ｃ_Ｒｅｑを送信した外部デバイスに送信する。
【００８９】
ＣＮＬは、Ｃ_Ａｃｃ処理部３１２からのＣ_Ａｃｃ送信要求に応じて、電子機器１０のユニークＩＤつまり近接無線通信デバイス１０４のユニークＩＤを送信元デバイスのＩＤとして含み、且つ外部デバイスのユニークＩＤを送信先デバイスのＩＤとして含む、応答信号Ｃ_Ａｃｃを、近接無線通信デバイス１０４を介して送信する。
【００９０】
このようにして、接続要求信号Ｃ_Ｒｅｑおよび応答信号Ｃ_Ａｃｃをデバイス間で転送することにより、それらデバイス間の接続を確立することが出来る。また、接続要求信号Ｃ_Ｒｅｑおよび応答信号Ｃ_Ａｃｃの各々は送信元デバイスのユニークＩＤを含んでいるので、接続要求信号Ｃ_Ｒｅｑおよび応答信号Ｃ_Ａｃｃにより、デバイス間でユニークＩＤを交換することが出来る。よって、接続確立処理のシーケンスの中で、各デバイスは通信相手のデバイスのユニークＩＤを認識することができる。
【００９１】
次に、図１０を参照して、デバイスＡ，Ｂによって実行される接続確立処理のシーケンスの具体例を説明する。
【００９２】
デバイスＡ，Ｂの一方はプロアクティブモードであり、他方はフレキシブルモードであるとする。この場合、デバイスＡ，Ｂの各々は、接続要求信号Ｃ_Ｒｅｑを送信する。すなわち、デバイスＡは、デバイスＡ内の近接無線通信デバイスを介して接続要求信号Ｃ_Ｒｅｑを送信する。接続要求信号Ｃ_Ｒｅｑは、例えば、所定時間間隔で繰り返し送信される。この接続要求信号Ｃ_Ｒｅｑは、デバイスＡのユニークＩＤを含み得る。
【００９３】
同様に、デバイスＢは、デバイスＢ内の近接無線通信デバイスを介して接続要求信号Ｃ_Ｒｅｑを送信する。接続要求信号Ｃ_Ｒｅｑも、例えば、所定時間間隔で繰り返し送信される。この接続要求信号Ｃ_Ｒｅｑは、デバイスＢのユニークＩＤを含み得る。
【００９４】
デバイスＡ，Ｂが互いに近接している場合、デバイスＡのＣＮＬはデバイスＢのＣＮＬからの接続要求信号Ｃ_Ｒｅｑを受信することができ、またデバイスＢのＣＮＬもデバイスＡのＣＮＬからの接続要求信号Ｃ_Ｒｅｑを受信することができる。
【００９５】
デバイスＢからの接続要求信号Ｃ_Ｒｅｑを受信した場合、デバイスＡのＣＮＬは、デバイスＡのＰＣＬに、受信した接続要求信号Ｃ_Ｒｅｑを通知する（indication）。このindicationには、デバイスＢのユニークＩＤが含まれている。デバイスＡのＰＣＬは、デバイスＢのユニークＩＤとデバイスＡ自身のユニークＩＤとを間の大小関係を判定するための比較処理を実行する。比較処理では、デバイスＡ自身のユニークＩＤの値とデバイスＢのユニークＩＤの値とを所定ビット長単位（例えば、１ビット単位、２ビット単位または８ビット単位）で比較する処理が、例えばＬＳＢからＭＳＢに向かう方向で順次実行される。
【００９６】
そして、デバイスＡのＰＣＬは、比較結果に基づいて、受信した接続要求信号Ｃ_Ｒｅｑの受託を示す応答信号Ｃ_ＡｃｃをデバイスＢに送信する処理、または外部デバイスからの応答信号Ｃ_Ａｃｃの受信を待つ処理のいずれかをＣＮＬと協同して実行する。
【００９７】
すなわち、デバイスＡのＰＣＬは、比較結果に基づいて、まず、受信した接続要求信号Ｃ_Ｒｅｑの受託を示す応答信号Ｃ_ＡｃｃをデバイスＢに送信するか否かを決定する。
【００９８】
例えば、比較処理によってデバイスＡ自身のユニークＩＤの値がデバイスＢのユニークＩＤの値よりも小さいと判定された場合、デバイスＡのＰＣＬは応答信号Ｃ_Ａｃｃの送信をデバイスＡのCNLに要求する。デバイスＡのCNLは、応答信号Ｃ_ＡｃｃをデバイスＢに送信する。この応答信号Ｃ_Ａｃｃは、デバイスＡのユニークＩＤを含み得る。これにより、デバイスＡは、自身のユニークＩＤを、接続要求信号Ｃ_Ｒｅｑを送信したデバイスＢに返信することが出来る。
【００９９】
一方、比較処理によってデバイスＡ自身のユニークＩＤの値がデバイスＢのユニークＩＤの値よりも大きいと判定された場合、デバイスＡのＰＣＬは応答信号Ｃ_Ａｃｃの送信をデバイスＡのCNLに要求しない。デバイスＡのＰＣＬは、外部デバイスから送信される応答信号Ｃ_ＡｃｃがＣＮＬによって受信されるのを待つ。外部デバイスから送信される応答信号Ｃ_Ａｃｃは、外部デバイスのユニークＩＤを含み得る。これにより、接続要求信号Ｃ_Ｒｅｑを送信したデバイスＡは、その接続要求信号Ｃ_Ｒｅｑを受託した外部デバイスのユニークＩＤを認識することが出来る。
【０１００】
デバイスＢもデバイスＡと同じ比較処理を実行する。
【０１０１】
ここで、比較処理の結果、デバイスＢのユニークＩＤの値の方がデバイスＡのユニークＩＤの値よりも大きいと判定された場合を想定する。この場合、デバイスＢからデバイスＡには応答信号Ｃ_Ａｃｃは送信されず、デバイスＡからデバイスＢにのみ応答信号Ｃ_Ａｃｃが送信される。デバイスＢは応答信号Ｃ_Ａｃｃを待つ処理を実行する。この結果、デバイスＢから送信された接続要求Ｃ_Ｒｅｑのみが有効となる。
【０１０２】
デバイスＢは、デバイスＢのユニークＩＤが送信先デバイスのユニークＩＤとして含まれている応答信号Ｃ_ＲｅｑをデバイスＡから受信した時、デバイスＢ自身の送信した接続要求Ｃ_ＲｅｑがデバイスＡによって受け入れられたと認識する。これにより、デバイスＡとデバイスＢとの間の接続を正しく確立することができる。デバイスＡ，デバイスＢのどちらにおいても、自身のユニークＩＤと、接続が確立された相手デバイスのユニークＩＤとを関連付けることができる。例えば、デバイスＢにおいては、応答信号Ｃ_Ｒｅｑ内に含まれる送信元デバイスのユニークＩＤ（デバイスＡのユニークＩＤ）が、接続が確立された相手デバイスのユニークＩＤとして認識される。
【０１０３】
このように、デバイス間の接続を確立するシーケンスにおいては、Ｃ_Ｒｅｑ、Ｃ_Ａｃｃによって、デバイスＡ，デバイスＢそれぞれのユニークＩＤをそれらデバイス間で交換することができる。したがって、ユニークＩＤの比較結果を用いて主導権を握る側のデバイスを一意に決定するという本実施形態の制御は、比較すべき特別な値を生成してデバイス間で交換するという処理を行うことなく、主導権を握る側のデバイスを一意に決定することを可能にする。
【０１０４】
次に、図１１のフローチャートを参照して、本実施形態の電子機器１０によって実行される通信制御処理の手順を説明する。
【０１０５】
電子機器１０の通信制御部３０１は、電子機器１０のモード、つまりＰＣＬのモードが、プロアクティブモード、リアクティブモード、フレキシブルモードのいずれであるかを判定する（ステップＳ１１）。プロアクティブモードまたはフレキシブルモードである場合（ステップＳ１２のＹＥＳ）、通信制御部３０１は、CNLを制御して、電子機器１０のユニークＩＤを含む接続要求信号Ｃ_Ｒｅｑを定期的に送信する処理を実行する（ステップＳ１３）。
【０１０６】
CNLによって外部デバイスからの接続要求信号Ｃ_Ｒｅｑが受信された場合、通信制御部３０１は、ＵＩＤ比較部３０３を用いて、電子機器１０のユニークＩＤと、受信された接続要求信号Ｃ_Ｒｅｑに含まれている外部デバイスのＵＩＤとの間の大小関係を判定する比較処理を実行する（ステップＳ１４）。
【０１０７】
電子機器１０のユニークＩＤが外部デバイスのＵＩＤよりも小さいと判定されたならば（ステップＳ１５のＹＥＳ）、通信制御部３０１は、外部デバイスからの接続要求信号を有効にするために、電子機器１０のユニークＩＤを含む応答信号Ｃ_Ａｃｃを外部デバイスに送信する（ステップＳ１６）。
【０１０８】
この後、通信制御部３０１は、送信した応答信号Ｃ_Ａｃｃに対する肯定応答ACKを待つ（ステップＳ１８）。肯定応答ACKが受信されると（ステップＳ１８のＹＥＳ）、電子機器１０と外部デバイスとの間の接続を確立する処理が完了される（ステップＳ２０）。
【０１０９】
一方、電子機器１０のユニークＩＤが外部デバイスのＵＩＤよりも大きいと判定されたならば（ステップＳ１５のＮＯ）、通信制御部３０１は、電子機器１０宛の応答信号Ｃ__Ａｃｃが外部デバイスから送信されるのを待つ（ステップＳ１７）。
【０１１０】
応答信号Ｃ_Ａｃｃを受信すると、通信制御部３０１は、応答信号Ｃ_Ａｃｃに対する肯定応答ACKを、応答信号Ｃ_Ａｃｃを送信したデバイスに送信する（ステップＳ１９）。
【０１１１】
電子機器１０と外部デバイスとの間の接続が確立された後、通信制御部３０１は、電子機器１０のアプリケーション層と外部デバイスのアプリケーション層との間のセッションを確立するために必要なネゴシエーション処理を外部デバイスとの間で実行し、ネゴシエーション処理によって決定されたユーザプロトコルに対応するサービス（データ伝送）の実行を開始する（ステップＳ２１）。データ伝送においては、パケットがデバイス間で伝送される。このパケットとしては、送信元デバイスのユニークＩＤおよび送信先デバイスのユニークＩＤを含むヘッダが付加されたパケットを使用し得る。近接されたデバイスそれぞれのユニークＩＤは接続確立処理シーケンスにおいて既に交換されているので、接続確立処理後、即座にデータ伝送を開始することができる。
【０１１２】
なお、電子機器１０がリアクティブモードに設定されている場合には、電子機器１０は、接続要求信号は送信せずに、外部デバイスからの接続要求信号を受信する処理のみを実行する。外部デバイスからの接続要求信号を受信したならば、電子機器１０は、その外部デバイスに応答信号を送信する。
【０１１３】
以上のように、本実施形態の電子機器においては、自身のユニークＩＤを含む接続要求信号を送信する機能を有しており、また、外部デバイスからの接続要求信号を受信した場合には、その受信した接続要求信号に含まれる外部デバイスのユニークＩＤの値と自身のユニークＩＤの値とを比較してどちらのＩＤの値が大きいかを判定するための比較処理が実行される。そして、その比較結果に基づいて、外部デバイスからの接続要求信号の受託を示す応答信号を外部デバイスに送信する処理、または外部デバイスからの応答信号の受信を待つ処理のいずれかが実行される。よって、本実施形態の電子機器は、接続確立処理手順の複雑化を招くことなく、任意の外部デバイスとの接続を容易に確立することができる。
【０１１４】
また、本実施形態では、送信元デバイスのユニークＩＤを含む接続要求信号、および送信元デバイスのユニークＩＤを含む応答信号を用いて、デバイス間の接続確立処理が実行される。よって、接続確立処理のシーケンスと同時に、各デバイスが通信相手のデバイスを認識することができる。
【０１１５】
また、本実施形態では、デバイスＡのユニークＩＤのビット列とデバイスＢのユニークＩＤのビット列とを所定ビット長単位で比較する処理を、ベンダーＩＤが割り当てられた領域以外の他の領域内の予め決められた所定のビット位置から順次実行することによって、ユニークＩＤ間の大小関係が判定される。よって、各ユニークＩＤに含まれるベンダーＩＤにできるだけ影響を受けずに、ユニークＩＤ間の大小関係を一意に判定することができる。
【０１１６】
なお、電子機器１０は、自身が接続要求を送信するモード（プロアクティブモードまたはフレキシブルモード）で動作しており、且つ相手からの接続要求信号を受信した場合にのみ、上述のユニークＩＤ比較処理を実行すればよい。相手がリアクティブモードならば、電子機器１０は、接続要求信号を受信しないので、電子機器１０が送信した接続要求信号に対する受託を示す外部デバイスからの応答信号を待つ処理のみを実行すればよい。
【０１１７】
また、電子機器１０がリアクティブモードである期間中は、電子機器１０は、外部デバイスからの接続要求信号を待ち、接続要求信号を受信した場合、受託を示す応答信号を外部デバイスに送信すればよい。
【０１１８】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素からいくつかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【符号の説明】
【０１１９】
１０…電子機器、１１…システム制御部、１０１ａ…ＣＰＵ、１０４…近接無線通信デバイス、３０１…通信制御部、３０２…モード管理部、３０３…ＵＩＤ比較部、３１１…Ｃ_Ｒｅｑ処理部、３１２…Ｃ_Ａｃｃ処理部。
【図１】
2010258595.tif 000003
【図２】
2010258595.tif 000004
【図３】
2010258595.tif 000005
【図４】
2010258595.tif 000006
【図５】
2010258595.tif 000007
【図６】
2010258595.tif 000008
【図７】
2010258595.tif 000009
【図８】
2010258595.tif 000010
【図９】
2010258595.tif 000011
【図１０】
2010258595.tif 000012
【図１１】
2010258595.tif 000013
【手続補正書】
【提出日】平成22年2月24日(2010.2.24)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
上述の課題を解決するために、本発明の電子機器は、近接無線通信を実行する通信モジュールと、前記通信モジュールの固有のＩＤを含む接続要求信号を前記通信モジュールを介して送信する接続要求送信手段と、前記通信モジュールに近接状態の外部デバイスからの接続要求信号を受信した場合、前記接続要求信号内に含まれる前記外部デバイスの固有のＩＤの値と前記通信モジュールの固有のＩＤの値とを比較してどちらのＩＤの値が大きいかを判定する比較処理を実行する比較手段と、前記比較結果に基づいて、前記受信した接続要求信号の受け入れを示す応答信号を前記通信モジュールを介して前記外部デバイスに送信する処理、または前記接続要求送信手段によって送信された接続要求信号に対する受け入れを示す外部デバイスからの応答信号を待つ処理のいずれか一方を実行する応答制御手段とを具備することを特徴とする。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】変更
【補正の内容】
【００１１】
また、本発明は、電子機器に設けられた通信モジュールと外部デバイスとの間で実行される近接無線通信を制御する通信制御方法であって、前記通信モジュールの固有のＩＤを含む接続要求信号を前記通信モジュールを介して送信する接続要求送信ステップと、前記通信モジュールに近接状態の外部デバイスからの接続要求信号を受信した場合、前記接続要求信号内に含まれる前記外部デバイスの固有のＩＤの値と前記通信モジュールの固有のＩＤの値とを比較してどちらのＩＤの値が大きいかを判定する比較処理を実行する比較ステップと、前記比較結果に基づいて、前記受信した接続要求信号の受け入れを示す応答信号を前記通信モジュールを介して前記外部デバイスに送信する処理、または前記接続要求送信手段によって送信された接続要求信号に対する受け入れを示す外部デバイスからの応答信号を待つ処理のいずれか一方を実行する応答制御ステップとを具備することを特徴とする。
【手続補正３】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
近接無線通信を実行する通信モジュールと、
前記通信モジュールの固有のＩＤを含む接続要求信号を前記通信モジュールを介して送信する接続要求送信手段と、
前記通信モジュールに近接状態の外部デバイスからの接続要求信号を受信した場合、前記接続要求信号内に含まれる前記外部デバイスの固有のＩＤの値と前記通信モジュールの固有のＩＤの値とを比較してどちらのＩＤの値が大きいかを判定する比較処理を実行する比較手段と、
前記比較結果に基づいて、前記受信した接続要求信号の受け入れを示す応答信号を前記通信モジュールを介して前記外部デバイスに送信する処理、または前記接続要求送信手段によって送信された接続要求信号に対する受け入れを示す外部デバイスからの応答信号を待つ処理のいずれか一方を実行する応答制御手段とを具備することを特徴とする電子機器。
【請求項２】
前記応答制御手段によって送信される前記応答信号は前記通信モジュールの固有のＩＤを含み、前記外部デバイスからの前記応答信号は前記外部デバイスの固有のＩＤを含むことを特徴とする請求項１記載の電子機器。
【請求項３】
前記通信モジュールの固有のＩＤおよび前記外部デバイスの固有のＩＤの各々は、ベンダーＩＤと他の情報とを含む複数ビット長のビット列から構成されており、
前記比較手段は、前記通信モジュールの固有のＩＤのビット列と前記外部デバイスの固有のＩＤのビット列とを所定ビット長単位で比較する処理を、前記ベンダーＩＤが存在するビット部以外の所定ビット位置から順次実行することによって、前記外部デバイスの固有のＩＤと前記通信モジュールの固有のＩＤのどちらのＩＤの値が大きいかを判定することを特徴とする請求項１記載の電子機器。
【請求項４】
前記通信モジュールの固有のＩＤおよび前記外部デバイスの固有のＩＤの各々は、ベンダーＩＤと他の情報とを含む複数ビット長のビット列から構成され、且つ前記ベンダーＩＤは前記ビット列の上位ビット部側に位置しており、
前記比較手段は、前記通信モジュールの固有のＩＤのビット列と前記外部デバイスの固有のＩＤのビット列とを所定ビット長単位で比較する処理を前記ビット列内の最下位ビットから最上位ビットに向かう方向で順次実行することによって、前記外部デバイスの固有のＩＤと前記通信モジュールの固有のＩＤのどちらのＩＤの値が大きいかを判定することを特徴とする請求項１記載の電子機器。
【請求項５】
前記通信モジュールの固有のＩＤおよび前記外部デバイスの固有のＩＤの各々は、ベンダーＩＤ、デバイスＩＤ、およびプロダクトＩＤと他の情報とを含む複数ビット長のビット列から構成され、且つ前記ベンダーＩＤ、デバイスＩＤ、およびプロダクトＩＤは前記ビット列内に離散して存在しており、
前記比較手段は、前記通信モジュールの固有のＩＤのビット列と前記外部デバイスの固有のＩＤのビット列とを所定ビット長単位で比較する処理を、前記プロダクトＩＤの比較タイミングよりも後に前記デバイスＩＤの比較タイミングが到来し、前記デバイスＩＤの比較タイミングよりも後に前記ベンダーＩＤの比較タイミングが到来するような順序で順次実行することによって、前記外部デバイスの固有のＩＤと前記通信モジュールの固有のＩＤのどちらのＩＤの値が大きいかを判定することを特徴とする請求項１記載の電子機器。
【請求項６】
前記通信モジュールの固有のＩＤおよび前記外部デバイスの固有のＩＤの各々は、ベンダーＩＤと他の情報とを含む複数ビット長のビット列から構成されており、
前記比較手段は、乱数を発生する処理と、発生した乱数を前記外部デバイスに通知する処理と、前記通信モジュールの固有のＩＤのビット列と前記外部デバイスの固有のＩＤのビット列とを所定ビット長単位で比較する処理を前記乱数によって指定される前記ビット列内の位置から順次実行することによって、前記外部デバイスの固有のＩＤと前記通信モジュールの固有のＩＤのどちらのＩＤの値が大きいかを判定する処理とを実行することを特徴する請求項１記載の電子機器。
【請求項７】
前記通信モジュールの固有のＩＤおよび前記外部デバイスの固有のＩＤの各々は、ベンダーＩＤと他の情報とを含む複数ビット長のビット列から構成されており、
乱数を発生する乱数発生手段と、
発生した乱数によって指定される前記ビット列内の位置に基づいて前記通信モジュールの固有のＩＤのビット列を再構成する処理と、前記再構成されたビット列を前記通信モジュールの固有のＩＤとして含む接続要求信号を送信する処理とを実行する制御手段とをさらに具備し
前記比較手段は、前記再構成されたビット列の値と前記外部デバイスの固有のＩＤのビット列の値のどちらが大きいかを判定することを特徴とする請求項１記載の電子機器。
【請求項８】
電子機器に設けられた通信モジュールと外部デバイスとの間で実行される近接無線通信を制御する通信制御方法であって、
前記通信モジュールの固有のＩＤを含む接続要求信号を前記通信モジュールを介して送信する接続要求送信ステップと、
前記通信モジュールに近接状態の外部デバイスからの接続要求信号を受信した場合、前記接続要求信号内に含まれる前記外部デバイスの固有のＩＤの値と前記通信モジュールの固有のＩＤの値とを比較してどちらのＩＤの値が大きいかを判定する比較処理を実行する比較ステップと、
前記比較結果に基づいて、前記受信した接続要求信号の受け入れを示す応答信号を前記通信モジュールを介して前記外部デバイスに送信する処理、または前記接続要求送信手段によって送信された接続要求信号に対する受け入れを示す外部デバイスからの応答信号を待つ処理のいずれか一方を実行する応答制御ステップとを具備することを特徴とする通信制御方法。
【請求項９】
前記通信モジュールの固有のＩＤおよび前記外部デバイスの固有のＩＤの各々は、ベンダーＩＤと他の情報とを含む複数ビット長のビット列から構成されており、
前記比較ステップは、前記通信モジュールの固有のＩＤのビット列と前記外部デバイスの固有のＩＤのビット列とを所定ビット長単位で比較する処理を、前記ベンダーＩＤが存在するビット部以外の所定ビット位置から順次実行することによって、前記外部デバイスの固有のＩＤと前記通信モジュールの固有のＩＤのどちらのＩＤの値が大きいかを判定することを特徴とする請求項８記載の通信制御方法。
【請求項１０】
前記通信モジュールの固有のＩＤおよび前記外部デバイスの固有のＩＤの各々は、ベンダーＩＤと他の情報とを含む複数ビット長のビット列から構成され、且つ前記ベンダーＩＤは前記ビット列の上位ビット部側に位置しており、
前記比較ステップは、前記通信モジュールの固有のＩＤのビット列と前記外部デバイスの固有のＩＤのビット列とを所定ビット長単位で比較する処理を前記ビット列内の最下位ビットから最上位ビットに向かう方向で順次実行することによって、前記外部デバイスの固有のＩＤと前記通信モジュールの固有のＩＤのどちらのＩＤの値が大きいかを判定することを特徴とする請求項８記載の通信制御方法。