説明

通信装置、制御方法、及びプログラム

【課題】迅速に通信を確立することができるようにする。
【解決手段】フロントエンドは、所定の処理を実行する複数のターゲットの中から、近接通信を行う外部装置の通信対象となる確定ターゲットを選択して、外部装置との間で通信が行われるように制御するに際して、確定ターゲットの候補を選択するためのコマンドの送信を行うとき、その送信先として、所定のターゲットが2回に1回選択されるように制御する。本技術は、例えば、NFC規格に対応した通信装置に適用することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本技術は、通信装置、制御方法、及びプログラムに関し、特に、迅速に通信を確立することができるようにした通信装置、制御方法、及びプログラムに関する。
【背景技術】
【0002】
無線通信の規格として、NFC(Near Field Communication)が知られている。NFC規格に対応したNFCデバイスでは、端末内に複数の通信対象(以下、ターゲットという)が同時に存在する場合が想定される。
【0003】
本出願人は、NFCデバイスとして、ターゲットとしての複数のセキュアエレメントと、それらのセキュアエレメントに共通に使用され、リーダ等の外部装置と近接通信するフロントエンドとを備え、フロントエンドが、起動時に、複数のセキュアエレメントに対して通信のための異なるタイムスロットを割り当てるものを先に提案している(例えば、特許文献1参照)。
【0004】
図1に示すように、NFCの無線通信を行う非接触無線チップ(CLF:Contactless Front End)(以下、フロントエンドともいう)と、リーダ(reader)が近接通信を行う場合、シングルレスポンスとマルチレスポンスの2つの方式がある。
【0005】
シングルレスポンス方式では、リーダ側からのポーリングに応じて、フロントエンドが1つのポーリングレスポンスを返すので、リーダは、そのポーリングレスポンスに対応するターゲットに対する処理を行う。そのため、シングルレスポンス方式では、特別な回路を設けることなく実装できるというメリットがある反面、マルチレスポンス方式と比べてターゲットの正答率(「リーダに対して、リーダが望むターゲットからのレスポンスを応答できる確率」を意味するものであり、以下、正答率という)が低くなってしまう。
【0006】
一方、マルチレスポンス方式では、リーダ側からのポーリングに応じて、フロントエンドが複数のポーリングレスポンスを返すので、リーダは、複数レスポンス受信に対応していれば、複数のポーリングレスポンスの中から選択された所望のポーリングレスポンスに対応するターゲットに対する処理を行う。そのため、マルチレスポンス方式は、一度に複数のレスポンスを返信するための特別な回路をフロントエンドに設ける必要があって実装面が複雑になる反面、シングルレスポンス方式と比べてターゲットの正答率を高くすることができる。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2011−49778号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
ところで、図2に示すように、フロントエンドがマルチレスポンス方式の機能を有する場合であっても、例えば3つのポーリングレスポンスを返したいときに、2つのタイムスロットしかないと、スロット不足のため、一度にポーリングレスポンスを返信することができなくなる。このように、マルチレスポンス方式では、スロット数が多ければ、ポーリングスロットを全て返信することが可能となるが、リーダが、TSN=0,1など、小さいTSN(Time Slot Number)によりポーリングしてきた場合に、スロット数が不足してしまい、全てのポーリングレスポンスを返せなくなるときがある。
【0009】
また、マルチレスポンス方式を利用するためには、特別な回路をフロントエンドに設ける必要があるため、マルチレスポンス方式に対応してない既存のデバイスだと、特別な回路を実装する必要が出てくる。
【0010】
また、あるNFCのリーダ動作規格によると、リーダは2回のポーリングを行い、2回のうちどちらかに、P2P(Peer to Peer)のアプリケーションからのレスポンスがあれば、P2Pのアプリケーションの動作を進めることができる、という動作仕様が定義されており、この動作仕様に対応する必要がある。
【0011】
本技術はこのような状況に鑑みてなされたものであり、上記のリーダの動作仕様に対応し、かつ、フロントエンドに特別な回路を実装することなく、リーダが所望とするターゲットを確実に選択して、迅速に通信を確立することができるようにするものである。
【課題を解決するための手段】
【0012】
本技術の一側面の通信装置は、それぞれが所定の処理を実行する複数のターゲットと、前記複数のターゲットの中から、外部装置の通信対象となる確定ターゲットを選択して、前記外部装置との近接通信を行うフロントエンドとを備え、前記フロントエンドは、前記確定ターゲットの候補を選択するためのコマンドの送信を行うに際し、その送信先として、所定のターゲットを2回に1回選択する。
【0013】
前記フロントエンドは、前記外部装置からポーリングコマンドを受信した場合、そのコマンドを、前記所定のターゲット以外の複数のターゲットにブロードキャスト送信する。
【0014】
前記所定のターゲットは、P2P(Peer to Peer)のアプリケーションである。
【0015】
前記複数のターゲットのうち、前記所定のターゲットを除く他のターゲットは、セキュアエレメント及びUICC(Universal Integrated Circuit Card)のいずれか一方又は双方を含んでいる。
【0016】
前記フロントエンドは、前記確定ターゲットの候補として選択したターゲットのうち、前記外部装置の通信対象となるターゲットを、前記確定ターゲットとして確定する。
【0017】
前記フロントエンドは、前記確定ターゲットの候補として選択したターゲットから得られる前記ターゲットの識別子と、前記外部装置が送信したコマンドに含まれる識別子が一致する場合、当該確定ターゲットの候補を、前記確定ターゲットとして確定する。
【0018】
前記フロントエンドは、前記外部装置から、前記確定ターゲットの候補として選択したターゲットを前記確定ターゲットとして確定するためのコマンドを受信した場合、当該確定ターゲットの候補を、前記確定ターゲットとして確定する。
【0019】
前記フロントエンドは、所定のターゲット解除条件に基づいて、前記確定ターゲットを、前記外部装置の通信対象から解除する。
【0020】
前記フロントエンドは、前記外部装置との近接通信が切断された後、前記外部装置からポーリングコマンドを受信した場合、前記確定ターゲットを解除する。
【0021】
前記フロントエンドは、前記外部装置から、前記外部装置と前記確定ターゲットとの通信を終了するためのコマンドを受信した場合、前記確定ターゲットを解除する。
【0022】
通信装置は、独立した装置であってもよいし、1つの装置を構成している内部ブロックであってもよい。
【0023】
本技術の一側面の制御方法又はプログラムは、前述した本技術の一側面の通信装置に対応する制御方法又はプログラムである。
【0024】
本技術の一側面の通信装置、制御方法、及びプログラムにおいては、それぞれが所定の処理を実行する複数のターゲットの中から、外部装置の通信対象となる確定ターゲットが選択され、外部装置との近接通信が行われる。また、確定ターゲットの候補を選択するためのコマンドの送信を行うに際し、その送信先として、所定のターゲットが2回に1回選択される。
【発明の効果】
【0025】
本技術の一側面によれば、迅速に通信を確立することができる。
【図面の簡単な説明】
【0026】
【図1】近接通信の方式を説明する図である。
【図2】マルチレスポンス方式における応答条件の例を示す図である。
【図3】NFCデバイスの構成例を示す図である。
【図4】CLFの詳細な構成例を示す図である。
【図5】ルーティング処理を説明するフローチャートである。
【図6】シンプルローテーション方式の候補遷移図である。
【図7】スキップ機能を含むシンプルローテーション方式の候補遷移図である。
【図8】スキップ機能を含むP2Pメインのローテーション方式の候補遷移図である。
【図9】ブロードキャスト送信を説明するシーケンス図である。
【図10】ブロードキャスト送信を、スキップ機能を含むP2Pメインのローテーション方式に組み込んだ場合の候補遷移図である。
【図11】候補選択処理の流れを説明するフローチャートである。
【図12】IDm比較方式を説明するシーケンス図である。
【図13】IDm比較方式による確定処理の流れを説明するフローチャートである。
【図14】ATR_REQ受信方式を説明するシーケンス図である。
【図15】ATR_REQ受信方式による確定処理の流れを説明するフローチャートである。
【図16】RF信号の消失によるターゲットの解除を説明する図である。
【図17】RF信号が消失して復活した場合を説明するシーケンス図である。
【図18】解除処理の流れを説明するフローチャートである。
【図19】ルーティングの状態遷移図である。
【図20】ユースケース1を説明するシーケンス図である。
【図21】ユースケース2を説明するシーケンス図である。
【図22】ユースケース3を説明するシーケンス図である。
【図23】拡張版のスキップ機能を含むP2Pメインのローテーション方式の候補遷移図である。
【図24】コンピュータの構成例を示す図である。
【発明を実施するための形態】
【0027】
以下、図面を参照しながら本技術の実施の形態について説明する。
【0028】
[NFCデバイスの構成例]
図3は、NFCデバイスの構成例を示す図である。
【0029】
NFCデバイス11は、例えば、携帯電話機、ICカード、携帯情報端末、又はパーソナルコンピュータなどの装置として構成される。NFCデバイス11は、NFCリーダ12等の外部装置と、例えばISM(Industry Science Medical)バンドの13.56MHzの周波数の搬送波を用いて、数10cm以内(接触している場合も含む)の距離で近接通信を行う。
【0030】
NFCデバイス11は、CLF31、ESE32、DH33、及びUICC34から構成される。CLF31と、ターゲットとしてのESE32、DH33、及びUICC34のそれぞれは、有線により接続され、相互に通信可能とされる。
【0031】
CLF(Contactless Front End)31は、NFCデバイス11内に設けられたアンテナに接続され、NFCリーダ12と近接通信を行う。CLF31は、NFCリーダ12から送信されてくるコマンドに応じて、NFCリーダ12が所望とするターゲットを選択して、NFCリーダ12との間で通信が行われるように制御する。
【0032】
また、CLF31は、メモリ31Aを内蔵しており、必要に応じて各種のデータが記憶される。
【0033】
ESE(Embedded Secure Element)32は、ICチップのセキュリティを含めたコア部分となるセキュアエレメントであって、例えば、電子決済や電子乗車券、入退室管理のNFCアプリケーションにおけるセキュリティ機能を実現する。
【0034】
DH(Device Host)33は、NFCデバイス11の各部の動作を制御する。また、DH33は、P2P(Peer to Peer)のアプリケーションであるP2Pアプリ41を実行する。なお、P2Pアプリ41は、1又は複数実行可能とされる。
【0035】
UICC(Universal Integrated Circuit Card)34は、例えば、SIM(Subscriber Identity Module)カードから構成される。UICC34は、NFCアプリケーションを実行することで、例えば、電子決済機能を実現する。
【0036】
このように、ESE32、UICC34、及びP2Pアプリ41は、NFCリーダ12の通信対象となるターゲットであって、それぞれが所定の処理を行う。換言すれば、ターゲットには、ESE32やUICC34などのデバイスと、P2Pアプリ41などのアプリケーションが含まれることになる。
【0037】
NFCデバイス11は、以上のように構成される。
【0038】
[CLFの詳細な構成例]
図4は、図3のCLF31の詳細な構成例を示す図である。
【0039】
CLF31は、候補選択部101、確定部102、解除部103、及び無線通信制御部104から構成される。
【0040】
候補選択部101は、所定の規則に従って、NFCリーダ12の通信対象となるターゲットの候補(以下、ターゲット候補という)を選択する候補選択処理を行う。候補選択処理が行われることで、ターゲット候補として、1又は複数のターゲットが選択される。
【0041】
確定部102は、所定の規則に従って、候補選択処理によりターゲット候補として選択されたターゲットを確定する確定処理を行う。確定処理が行われることで、ターゲット候補として選択されたターゲットのうち、NFCリーダ12の通信対象となるターゲット(以下、確定ターゲットという)が確定される。
【0042】
解除部103は、所定の規則に従って、確定処理により確定されたターゲットを解除する解除処理を行う。解除処理が行われることで、確定ターゲットがNFCリーダ12の通信対象から解除される。
【0043】
無線通信制御部104は、NFCリーダ12との間で行われる近接通信を制御するための処理を行う。
【0044】
CLF31は、以上のように構成される。
【0045】
[ルーティング処理]
次に、図5のフローチャートを参照して、CLF31により実行されるルーティング処理について説明する。
【0046】
ステップS1において、候補選択部101は、候補選択処理を行う。この候補選択処理によって、複数のターゲットの中から、1以上のターゲットが、ターゲット候補として選択される。
【0047】
なお、候補選択処理の詳細は、図6乃至図11を参照して後述する。
【0048】
ステップS2において、確定部102は、確定処理を行う。この確定処理によって、ターゲット候補として選択された1以上のターゲットの中から、NFCリーダ12の通信対象となる確定ターゲットが確定される。
【0049】
なお、確定処理の詳細は、図12乃至図15を参照して後述する。
【0050】
ステップS3において、解除部103は、解除処理を行う。この解除処理によって、確定ターゲットがNFCリーダ12の通信対象から解除される。すなわち、一旦、通信対象として確定された確定ターゲットは、解除処理が行われ、通信対象から解除されるまで、NFCリーダ12の通信対象となる。
【0051】
なお、解除処理の詳細は、図16乃至図18を参照して後述する。また、規格によっては、解除処理を行う必要のない規格もあるが、その場合にはステップS3の処理は省略される。
【0052】
以上で、ルーティング処理の説明を終了する。
【0053】
前述したルーティング処理によれば、複数のターゲットの中から、1以上のターゲット候補が選択され、選択された1以上のターゲットの中から、NFCリーダ12の通信対象となる確定ターゲットが確定される。そして、確定ターゲットが解除されるまで、通信対象として確定された確定ターゲットと、NFCリーダ12との間で通信が行われる。
【0054】
[候補選択処理]
次に、図6乃至図11を参照して、図5のステップS1に対応する候補選択処理について説明する。
【0055】
ここでは、候補選択処理として、固定ターゲット方式、シンプルローテーション方式、スキップ機能を含むシンプルローテーション方式、及び、スキップ機能を含むP2Pメインのローテーション方式の4つの方式について説明する。
【0056】
固定ターゲット方式は、アプリケーションから特に選択されない限り、デフォルトで設定されたターゲットが常に選択される方式である。
【0057】
固定ターゲット方式を採用すると、実装面では極めてシンプルになるというメリットがある反面、ターゲット候補の選択時の正答率が悪くなるというデメリットもある。例えば、ターゲットをESE32に固定してしまうと、ユーザの事前設定なしには、P2Pアプリ41やUICC34などのアプリケーションを動作させることができなくなる。
【0058】
シンプルローテーション方式は、ターゲット候補を順次変更することで、ターゲットを選択する方式である。CLF31は、NFCリーダ12からポーリングされる度に、異なるターゲット候補を選択して、選択されたターゲットからのレスポンスを返信する。
【0059】
具体的には、図6に示すように、例えば、最初のポーリングではESE32がターゲット候補として選択され、その後、ポーリングされるごとにローテーションが行われ、UICC34、P2Pアプリ41、ESE32、・・・が順次、ターゲット候補として選択される。
【0060】
シンプルローテーション方式を採用すると、実装面ではシンプルになるというメリットがある反面、所望のターゲットを選択するためにポーリングのリトライを繰り返す場合が出てくるため、ターゲット候補の選択時の正答率は上がらないというデメリットがある。
【0061】
スキップ機能を含むシンプルローテーション方式は、前述したシンプルローテーションに加えて、あるターゲットが、対象外であると判定された場合には、そのターゲットをスキップして、次のターゲットをターゲット候補として選択する方式である。CLF31は、NFCリーダ12からポーリングされる度に、そのポーリングパラメータをチェックして、対象外となるターゲットを判定する。そして、対象外のターゲット候補であると判定された場合には、そのターゲットをスキップして、次のターゲットをターゲット候補として選択する。
【0062】
具体的には、図7に示すように、例えば、ポーリングパラメータのSC(System Code)が"FFFF"ではない場合、又はRC(Request Code)="1"の場合、そのポーリングは、P2Pアプリ41に対するものではないため、ターゲット候補を、UICC34からESE32に切り替える。すなわち、前述したシンプルローテーションであると、UICC34の次はP2Pアプリ41がターゲット候補となるところ、P2Pアプリ41がスキップされ、ターゲット候補がESE32に強制的に切り替えられることになる。
【0063】
スキップ機能を含むシンプルローテーションを採用すると、前述したシンプルローテーション方式と同等のシンプルさで実装できるだけでなく、所定の規則により対象外となるターゲットを特定して非選択とすることで、ターゲット候補の選択時の正答率も向上させることができる。
【0064】
スキップ機能を含むP2Pメインのローテーション方式は、前述したスキップ機能を含むシンプルローテーションを、P2Pアプリ41を中心に行う方式である。
【0065】
具体的には、図8に示すように、ローテーションの順番が、P2Pアプリ41を中心にして、例えば、P2Pアプリ41,ESE32,P2Pアプリ41,UICC34,P2Pアプリ41の順に行われる。これは、あるNFCのリーダ動作規格によると、NFCリーダ12は2回のポーリングを行い、2回のうちどちらかにP2Pアプリ41からのレスポンスがあれば、P2P動作を進めることができる、という動作仕様が定義されており、これに対応するため、2回に1回は必ず、P2Pアプリ41のレスポンスが返信されるようにしたものである。
【0066】
これにより、ターゲットとなる、P2Pアプリ41,ESE32,UICC34のうち、P2Pアプリ41が2回に1回必ず選択されるので、NFCリーダ12では、確実にP2Pアプリ41に対する動作が行われることになる。また、スキップ機能を含むシンプルローテーション方式と同様に、例えば、P2Pアプリ41に対するポーリングではない場合には、ローテーションが、P2Pアプリ41をスキップして、ターゲット候補がESE32又はUICC34に、強制的に切り替えられる。
【0067】
なお、図8の例では、P2Pアプリ41が2回に1回必ずターゲット候補として選択されるとして説明したが、NFCリーダ12側の動作の規則に応じて、P2Pアプリ41以外の他のターゲットが2回に1回、ターゲット候補として選択されるようにしてもよい。すなわち、3以上のターゲットのうちの1つのターゲットが、2回に1回、ターゲット候補として選択されるようにすることで、NFCリーダ12が所望とするターゲットを確実に選択して、迅速に通信を確立することができる。
【0068】
スキップ機能を含むP2Pメインのローテーション方式を採用すると、前述したシンプルローテーション方式と同等のシンプルさで実装できるだけでなく、ターゲット候補の選択時の正答率も向上させることができる。また、NFCリーダ12側の動作の規則に応じて、所定のターゲットが優先的に選択されるので、NFCリーダ12側の動作との整合をとることができる。
【0069】
また、CLF31は、NFCリーダ12から受信したポーリングコマンドを、ターゲットに送信する場合、ユニキャスト又はブロードキャストにより送信することができる。
【0070】
ユニキャストでは、現時点で、ターゲット候補となっているターゲットにのみ、ポーリングコマンドが送信される。そのため、ユニキャスト送信を行う場合には、実装面ではシンプルとなるが、ターゲット候補の選択時の正答率の向上には寄与しないこととなる。
【0071】
一方、ブロードキャストでは、ターゲット候補となっているターゲットであるか否かに関係なく、複数のターゲットにポーリングコマンドが送信される。
【0072】
具体的には、図9に示すように、例えば、ESE32がターゲット候補となっている場合に、NFCリーダ12がUICC34に対するSCを指定してポーリングコマンドを送信してきたとき、CLF31は、ポーリングコマンドを、ESE32とUICC34の両方にブロードキャストで送信する。これにより、ESE32からは無応答となるが、UICC34からはレスポンスがあるため、ターゲット候補を、ESE32からUICC34に切り替えて、NFCリーダ12に返信することができる。すなわち、ブロードキャスト送信を行う場合には、実装面ではユニキャストに比べて複雑になるが、ターゲット候補の選択時の正答率の大幅な向上が見込まれる。
【0073】
図10は、図9で説明したブロードキャスト送信を、図8で説明したスキップ機能を含むP2Pメインのローテーション方式に組み込んだ場合のターゲット候補遷移図である。
【0074】
前述したように、スキップ機能を含むP2Pメインのローテーション方式では、P2Pアプリ41を中心にして、例えば、P2Pアプリ41,ESE32,P2Pアプリ41,UICC34,P2Pアプリ41の順にローテーションされる。それに対して、ブロードキャスト送信が組み込まれると、P2Pアプリ41からESE32又はUICC34にターゲット候補が遷移する際に、ブロードキャスト送信に対するレスポンスに応じて、ESE32又はUICC34にターゲット候補が遷移する。
【0075】
例えば、P2Pアプリ41,ESE32,P2Pアプリ41の順に候補が遷移した後、ポーリングコマンドをブロードキャスト送信することで、UICC34からは無応答であったが、ESE32からレスポンスがあった場合、UICC34ではなく、ESE32がターゲット候補とされる。そして、P2Pアプリ41,UICC34,P2Pアプリ41の順にターゲット候補が遷移した後、ポーリングコマンドをブロードキャスト送信することで、UICC34からレスポンスがあったが、ESE32からは無応答であった場合、ESE32ではなく、UICC34がターゲット候補とされ、その後、P2Pアプリ41に候補が遷移される。
【0076】
すなわち、ブロードキャスト送信を、スキップ機能を含むP2Pメインのローテーション方式に組み込んだ場合、P2Pアプリ41を中心にして、例えば、P2Pアプリ41,ESE32,P2Pアプリ41,ESE32,P2Pアプリ41,UICC34,P2Pアプリ41,UICC34,P2Pアプリ41の順にローテーションされる。
【0077】
このように、3以上のターゲットのうちの1つのターゲットが、2回に1回選択されるようにターゲット候補を選択するだけでなく、ブロードキャスト送信することで、2回に1回選択されるターゲット以外のターゲットの正答率を、さらに向上させることができる。その結果、NFCリーダ12が所望とするターゲットを確実に選択して、迅速に通信を確立することができる。
【0078】
次に、図11のフローチャートを参照して、候補選択部101により実行される、図5のステップS1に対応する候補選択処理の流れについて説明する。
【0079】
なお、図11では、候補選択処理として最も効率がよい方式となる、スキップ機能を含むP2Pメインのローテーション方式による候補選択処理について説明する。
【0080】
ステップS21において、候補選択部101は、初期設定を行う。この初期設定としては、例えば、P2Pアプリ41からローテーションを開始するか否かに応じて、変数i=0又は1がセットされる。
【0081】
ステップS22において、候補選択部101は、無線通信制御部104を制御して、NFCリーダ12からポーリングコマンドを受信したか否かを判定する。ステップS22において、ポーリングコマンドを受信したと判定された場合、処理は、ステップS23に進められる。
【0082】
ステップS23において、候補選択部101は、NFCリーダ12からのポーリングコマンドに含まれるポーリングパラメータに基づいて、P2Pアプリ41がターゲット候補の対象外となるか否かを判定する。ここでは、前述したように、例えば、ポーリングパラメータが、SC="FFFF"ではない場合、又はRC="1"の場合、そのポーリングは、P2Pアプリ41に対するものではないことになる。
【0083】
なお、ここでは、P2Pアプリ41がターゲット候補の対象外となる例を説明したが、ポーリングパラメータに応じて、P2Pアプリ41以外の他のターゲットが対象外となるようにしてもよい。
【0084】
ステップS23において、P2Pアプリ41がターゲット候補の対象外であると判定された場合、処理は、ステップS24に進められる。ステップS24において、候補選択部101は、P2Pアプリ41以外の他のターゲットを、ターゲット候補として選択する。この場合、例えば、ESE32又はUICC34がターゲット候補として選択される。
【0085】
一方、ステップS23において、P2Pアプリ41がターゲット候補の対象であると判定された場合、処理は、ステップS25に進められる。ステップS25において、候補選択部101は、変数iの値が偶数であるか否かを判定する。
【0086】
ステップS25において、変数iの値が偶数であると判定された場合、処理は、ステップS26に進められる。ステップS26において、候補選択部101は、P2Pアプリ41を、ターゲット候補として選択する。
【0087】
一方、ステップS25において、変数iの値が奇数であると判定された場合、処理は、ステップS24に進められる。ステップS24において、候補選択部101は、P2Pアプリ41以外の他のターゲットを、ターゲット候補として選択する。この場合、例えば、ESE32又はUICC34がターゲット候補として選択される。また、このとき、ESE32及びUICC34に対して、ポーリングコマンドをブロードキャスト送信することで、ターゲット候補の選択時の正答率を向上させることができるのは、図9を参照して前述した通りである。
【0088】
ステップS24又はS26が終了すると、処理は、ステップS27に進められる。ステップS27において、候補選択部101は、変数iの値を1インクリメントする。これにより、次のステップS25の判定処理では、偶数と奇数が逆になるので、判定結果も逆になり、直近で、P2Pアプリ41がターゲット候補として選択された場合には、次は、P2Pアプリ41以外の他のターゲットが選択されることになる。その逆に、P2Pアプリ41以外の他のターゲットが直近で選択された場合には、次は、P2Pアプリ41がターゲット候補として選択されることになる。
【0089】
ステップS27の処理が終了すると、ステップS28において、候補選択部101は、ターゲット候補の選択が終了したか否かを判定する。
【0090】
ステップS28において、ターゲット候補の選択が終了していないと判定された場合、処理は、ステップS22に戻り、前述した処理が繰り返される。すなわち、ターゲット候補の選択が終了したと判定されるまで(ステップS28のYes)、ステップS22乃至S28の処理が繰り返され、ターゲット候補として、P2Pアプリ41が2回に1回選択されることになる。ただし、前述の通り、例えば、P2Pアプリ41に対するポーリングではない場合には、ESE32又はUICC34が、ターゲット候補として強制的に選択される。
【0091】
そして、ステップS28において、ターゲット候補の選択が終了したと判定された場合、図11の候補選択処理は終了する。
【0092】
以上のように、スキップ機能を含むP2Pメインのローテーション方式を用いて、候補選択処理を行うことで、前述したシンプルローテーション方式と同等のシンプルさで実装できるだけでなく、ターゲット候補の選択時の正答率も向上させることができる。
【0093】
また、NFCリーダ12側の動作の規則に合わせて、P2Pアプリ41等の所定のターゲットが優先的に選択されるので、NFCリーダ12側の動作との整合をとることができる。さらに、所定のターゲット以外の複数のターゲットに対して、ポーリングコマンドをブロードキャスト送信することで、ターゲット候補の選択時の正答率を大幅に向上させることができる。
【0094】
[確定処理]
次に、図12乃至図15を参照して、図5のステップS2に対応する確定処理について説明する。
【0095】
ここでは、確定処理として、IDm比較方式及びATR_REQ受信方式の2つの方式について説明する。
【0096】
IDm比較方式は、シングルレスポンス方式において、NFCリーダ12からCLF31に対して、複数回のポーリングが行われる場合に、CLF31が各ポーリングに対して、ICチップの固有のIDであるIDmを用いて、異なるポーリングレスポンスを返すことにより、擬似的にマルチレスポンスを行う方式である。
【0097】
具体的には、図12に示すように、CLF31は、NFCリーダ12からのポーリングコマンドに応じて、候補選択処理を行う。CLF31は、UICC34からレスポンスがあった場合、UICC34のIDmを取得して、メモリ31Aに記憶する。これにより、UICC34がターゲット候補としてキープされる。そして、CLF31は、UICC34のIDmを含むポーリングレスポンスを、NFCリーダ12に返信する。
【0098】
続いて、NFCリーダ12から異なるポーリングコマンドが送信された場合、CLF31は、候補選択処理を行う。CLF31は、ESE32からレスポンスがあった場合、ESE32のIDmを取得して、メモリ31Aに記憶する。これにより、ESE32が候補に加えられ、ターゲット候補として、UICC34とESE32が選択される。そして、CLF31は、ESE32のIDmを含むポーリングレスポンスを、NFCリーダ12に返信する。
【0099】
その後、NFCリーダ12からリクエストサービス(Request Service)等のポーリング以外のコマンドが送信された場合、CLF31は、受信したコマンドに含まれるIDmと、メモリ31Aに記憶していたIDmとを比較して、IDmが一致したターゲット候補を、通信対象となる確定ターゲットとして確定する。例えば、NFCリーダ12からのリクエストサービスにESE32のIDmが含まれている場合、CLF31は、ESE32を確定ターゲットとして確定して、そのリクエストサービスをESE32に送信する。
【0100】
IDm比較方式を採用すると、IDmを取得して比較する処理等が加わるものの、CLF31に対して、複数回ポーリングコマンドを送信してくるNFCリーダ12に対しては、ターゲットの正答率を向上させることができる。ただし、ターゲット候補が確定される前に、IDmを含まないコマンドを受け付けることはできない。
【0101】
次に、図13のフローチャートを参照して、確定部102により実行されるIDm比較方式による確定処理の流れについて説明する。
【0102】
ステップS41において、確定部102は、候補選択処理により、ターゲット候補が選択されたか否かを判定する。ステップS41において、ターゲット候補が選択されたと判定された場合、処理は、ステップS42に進められる。
【0103】
ステップS42において、確定部102は、選択されたターゲット候補のIDmを取得して、メモリ31Aに記憶させる(ステップS43)。
【0104】
ステップS43の処理が終了すると、ステップS44において、確定部102は、無線通信制御部104を制御して、NFCリーダ12からポーリングコマンド以外のコマンドを受信したか否かを判定する。
【0105】
ステップS44において、ポーリングコマンド以外のコマンドを受信していないと判定された場合、処理は、ステップS41に戻り、前述した処理が繰り返される。すなわち、ステップS41乃至S44が繰り返され、ターゲット候補が選択された場合には、そのターゲットのIDmが、メモリ31Aに記憶される。
【0106】
一方、ステップS44において、ポーリングコマンド以外のコマンドを受信したと判定された場合、処理は、ステップS45に進められる。ステップS45において、確定部102は、NFCリーダ12からのポーリングコマンド以外のコマンドに含まれるIDmと、メモリ31Aに記憶されているIDmとを比較し、それらのIDmが一致するか否かを判定する(ステップS46)。
【0107】
ステップS46において、メモリ31Aに記憶されたIDmの中に、コマンドに含まれるIDmと一致するIDmが存在すると判定された場合、処理は、ステップS47に進められる。ステップS47において、確定部102は、IDmが一致するターゲット候補を、確定ターゲットとして確定する。例えば、ESE32のIDmがメモリ31Aに記憶されている場合であって、NFCリーダ12からのリクエストサービスにESE32のIDmが含まれているとき、ESE32が確定ターゲットとなる。
【0108】
一方、ステップS46において、IDmが一致しないと判定された場合、ステップS47はスキップされる。この場合、通信対象が確定されないため、候補選択処理が継続されることになる。そして、CLF31は、NFCリーダ12との通信が続いたとしても、ルートが確定していないため、レスポンスが行われず、そのままの状態に留まることになる。その後、NFCリーダ12とCLF31の間の通信が切断されれば、ターゲット候補はリセットされるので、NFCリーダ12によるポーリングからやり直しとなる。すなわち、NFCリーダ12との通信が途切れた後、再度、NFCリーダ12によるポーリングが行われることになる。
【0109】
確定ターゲットが確定されるか(ステップS47)、あるいは、IDmが一致しないと判定されると(ステップS46のNo)、図13の確定処理は終了する。
【0110】
以上のように、IDm比較方式を用いて、確定処理を行うことで、CLF31に対して、複数回ポーリングコマンドを送信してくるNFCリーダ12に対しては、ターゲットの正答率を向上させることができる。
【0111】
ATR_REQ受信方式は、マルチレスポンス方式又はシングルレスポンス方式において、P2Pアプリ41としてNFCリーダ12にレスポンスした後、正しいATR_REQ(属性要求)を受信した場合にはATR_RESを返信して、確定ターゲットを確定する方式である。
【0112】
具体的には、図14に示すように、CLF31は、NFCリーダ12からのポーリングコマンドに応じて、候補選択処理を行い、P2Pアプリ41のポーリングレスポンスを返信する。これにより、P2Pアプリ41がターゲット候補としてキープされる。
【0113】
続いて、NFCリーダ12から異なるポーリングコマンドが送信された場合、CLF31は、候補選択処理を行う。CLF31は、ESE32からレスポンスがあった場合、ESE32のIDmを取得して、メモリ31Aに記憶する。これにより、ESE32が候補に加えられ、ターゲット候補として、P2Pアプリ41とESE32が選択される。そして、CLF31は、ESE32のIDmを含むポーリングレスポンスを、NFCリーダ12に返信する。
【0114】
その後、NFCリーダ12から、ATR_REQが送信された場合、CLF31は、P2Pアプリ41を確定ターゲットとして確定して、ATR_RESをNFCリーダ12に返信する。
【0115】
そして、CLF31は、NFCリーダ12からのATR_REQに応じて、P2Pアプリ41を確定ターゲットとして確定する。なお、この場合、ターゲットの確定を目的としてのIDmの比較は行われず、正しいATR_REQの受信によってターゲットが確定されることになる。
【0116】
次に、図15のフローチャートを参照して、確定部102により実行されるATR_REQ受信方式による確定処理の流れについて説明する。
【0117】
ステップS61乃至S63においては、図13のステップS41乃至S43と同様に、確定部102によって、選択されたターゲット候補のIDmが取得され、メモリ31Aに記憶される。
【0118】
ステップS64において、確定部102は、無線通信制御部104を制御して、NFCリーダ12からATR_REQを受信したか否かを判定する。
【0119】
ステップS64において、ATR_REQを受信していないと判定された場合、処理は、ステップS61に戻り、前述した処理が繰り返される。すなわち、ステップS61乃至S64が繰り返され、ターゲット候補が選択された場合には、そのターゲットのIDmが、メモリ31Aに記憶される。
【0120】
一方、ステップS64において、ATR_REQを受信したと判定された場合、処理は、ステップS65に進められる。ステップS65において、確定部102は、P2Pアプリ41を確定ターゲットとして確定する。
【0121】
P2Pアプリ41が通信対象として確定されると、図15の確定処理は終了する。
【0122】
以上のように、ATR_REQ受信方式を用いて、確定処理を行うことで、CLF31に対して、複数回ポーリングコマンドを送信してくるNFCリーダ12に対しては、ターゲットの正答率を向上させることができる。
【0123】
また、例えば、DH33上にFALP(FeliCa Ad-hoc Link Protocol)が実装された場合、確定部102は、FALP専用のNFCリーダ12から送信されるPropose Ad-hocコマンドを監視することで、Propose Ad-hocコマンドが受信された場合、強制的に、FALPを確定ターゲットとすることができる。すなわち、確定部102によって、NFCリーダ12から送信されるコマンドが監視され、所定のコマンドである場合には、そのコマンドに対応する所定のターゲットが、強制的に確定ターゲットとされる。
【0124】
[解除処理]
次に、図16乃至図18を参照して、解除処理について説明する。
【0125】
ここでは、解除処理として、強制終了方式、RF消失解除方式、ポーリング受信解除方式、RLS_REQ受信解除方式、及びDSL_REQ受信解除方式の5つの方式について説明する。
【0126】
強制終了方式は、DH33により実行されているアプリケーションが、ユーザ操作により終了された場合、それをトリガとして、DH33から強制的に確定ターゲットの解除が行われる方式である。
【0127】
RF消失解除方式は、NFCリーダ12とCLF31の近接通信が切断され、RF(Radio Frequency)信号が消失した場合に、確定ターゲットの解除が行われる方式である。
【0128】
ところで、RF消失解除方式では、RF信号のオン/オフのチャタリングが発生した場合に、予期せぬRF信号の消失による通信対象の解除によって、ユーザに不便が生じる場合がある。具体的には、図16に示すように、NFCリーダ12とCLF31の近接通信が行われる場合に、ポーリングの終わりのほうで搬送波が検出されると、RF信号が一瞬オンになった後、通信相手がListenモードになって、RF信号がオフになってしまう。この時点で、RF信号のオフが検出され、確定ターゲットの解除が行われるのは、処理上好ましくない。
【0129】
また、図17に示すように、NFCリーダ12とCLF31の近接通信が行われている途中で、RF信号が消失して、解除処理が行われると、その後、NFCリーダ12とCLF31の近接通信が復活した場合には、確定ターゲットが解除されているため、CLF31は、どのターゲットと通信するのかが不明となる。
【0130】
そこで、ポーリング受信解除方式では、RF信号の消失後の再接続に対応するために、RF信号が消失した時点では、確定ターゲットの解除を行わず、RF信号の消失後、NFCリーダ12から、次のポーリングコマンドが受信された時点で、確定ターゲットが解除されるようにする。また、RF信号の消失後に受信したコマンドが、ポーリングコマンドでなければ、RF信号の消失前の経路、すなわち、RF信号の消失前と同一のターゲットとの間で処理が継続されるようにする。
【0131】
このポーリング受信解除方式によって、RF信号の消失後の再接続に対応することが可能となる。ポーリング受信解除方式を採用すると、実装面では特別な状態を想定する必要がなくなるので、シンプルな構成とすることができるというメリットがある。
【0132】
RLS_REQ受信解除方式は、NFCリーダ12が、CLF31との近接通信を完全に終了するときに送信するコマンドであるRLS_REQを利用して、RLS_REQが受信された場合に、確定ターゲットの解除が行われる方式である。ここでは、P2Pアプリ41が確定ターゲットとして確定されている場合であって、RLS_REQが受信されたとき、CLF31は、P2Pアプリ41を、確定ターゲットから解除する。
【0133】
DSL_REQ受信解除方式は、NFCリーダ12が、ターゲットをディセレクト状態とする(非活性化する)ときに送信するコマンドであるDSL_REQを利用して、DSL_REQが受信された場合に、確定ターゲットの解除が行われる方式である。ここでは、P2Pアプリ41が確定ターゲットとして確定されている場合であって、DSL_REQが受信されたとき、CLF31は、P2Pアプリ41を、確定ターゲットから解除する。
【0134】
なお、前述した5つの方式以外のターゲット解除条件を用いて、ターゲットの解除が行われるようにしてもよい。例えば、NFCデバイス11をリセットするためのデバイスリセットなどの各種の規格で定められたコマンドが受信されたことをターゲット解除条件とすることができる。
【0135】
次に、図18のフローチャートを参照して、解除部103により実行される解除処理の流れについて説明する。
【0136】
ステップS81において、解除部103は、確定ターゲットを解除するための所定の条件であるターゲット解除条件が発生したか否かを判定する。
【0137】
例えば、ポーリング受信解除方式におけるRF信号の消失後のポーリングコマンドの受信、RLS_REQ受信解除方式におけるRLS_REQの受信、又はDSL_REQ受信解除方式におけるDSL_REQの受信がターゲット解除条件となるので、それらの解除条件が発生した場合、処理は、ステップS82に進められる。
【0138】
ステップS82において、解除部103は、例えば、P2Pアプリ41等の通信対象として確定されていた確定ターゲットを解除する。
【0139】
確定ターゲットが解除されると、図18の解除処理は終了する。
【0140】
以上のように、ポーリング受信解除方式、RLS_REQ受信解除方式、又はDSL_REQ受信解除方式を用いて、解除処理を行うことで、例えば、RF信号の消失後の再接続にも対応することが可能となる。
【0141】
[ルーティング状態遷移]
図19は、ルーティングの状態遷移を示す図である。
【0142】
図19において、非選択状態は、ターゲット候補の選択が行われていない状態を表す。また、選択中状態は、NFCリーダ12からポーリングコマンドを受信して、ターゲット候補が選択されている状態を表す。なお、選択中状態において、通信が切断されてRF信号が消失するか、所定のコマンドが受信された場合、非選択状態に遷移される。
【0143】
P2P確定中状態は、選択中状態時にNFCリーダ12からATR_REQが受信され、P2Pアプリ41が確定ターゲットとなっている状態を表す。なお、P2P確定中状態において、RF信号が消失したり、NFCリーダ12からのコマンドRLS_REQやDSL_REQ、CLFを制御するDHから無線通信処理の強制終了を指示するためのコマンドであるDEACTIVATE_CMDが受信された場合、非選択状態に遷移される。
【0144】
確定中状態は、選択中状態時に、NFCリーダ12から、ポーリングコマンドと、ATR_REQ以外のコマンドを受信して、P2Pアプリ41以外の他のターゲットが確定ターゲットとなっている状態を表す。なお、確定中状態において、所定のコマンドが受信された場合、非選択状態に遷移される。また、確定中状態において、通信が切断されてRF信号が消失した場合、リトライ待機中状態に遷移される。
【0145】
リトライ待機中状態は、確定中状態時に、RFが消失したため、リトライを待っている状態を表す。なお、リトライ待機中状態において、RF信号が復活後、ポーリング以外のNFC-Fのコマンドを受信するなどした場合、確定中状態に遷移される。また、リトライ待機中状態において、ポーリングコマンドが受信された場合、選択中状態に遷移される。
【0146】
以上のように、ルーティング処理においては、非選択状態、選択中状態、P2P確定中状態、確定中状態、及びリトライ待機中状態のいずれかに状態遷移が行われることで、複数のターゲットの中から、1以上のターゲット候補が選択され、確定ターゲットが確定される。そして、確定ターゲットが解除されるまで、確定ターゲットと、NFCリーダ12との間で通信が行われる。
【0147】
[ユースケースの例]
次に、前述したルーティング処理の具体的例として、ユースケース1乃至3を説明する。図20は、ユースケース1を説明するためのシーケンス図である。
【0148】
ユースケース1は、NFCリーダ12がP2Pアプリ専用のリーダであって、ターゲット候補選択のローテーションがP2Pアプリ41から開始されるケースの例である。
【0149】
図20に示すように、P2Pアプリ専用のNFCリーダ12からポーリングコマンドが送信されると、CLF31の候補選択部101は、ターゲット候補として、P2Pアプリ41を選択し、そのポーリングレスポンスをNFCリーダ12に返信する。
【0150】
次に、NFCリーダ12からポーリングコマンドが送信されると、候補選択部101は、そのポーリングコマンドをブロードキャスト送信する。ブロードキャスト送信されたポーリングコマンドは、ESE32及びUICC34にそれぞれ受信され、そのレスポンスがCLF31に返される。
【0151】
候補選択部101は、ESE32及びUICC34からのレスポンスに応じて、ESE32をターゲット候補に選択し、そのポーリングレスポンスをNFCリーダ12に返信する。これにより、ターゲット候補として、P2Pアプリ41とESE32が選択されたことになる。
【0152】
続いて、NFCリーダ12からコマンドATR_REQが送信されると、CLF31の確定部102によって、P2Pアプリ41が確定ターゲットとされ、コマンドATR_RESが返信される。これにより、P2Pアプリ専用のNFCリーダ12とP2Pアプリ41が、CLF31を介して、所定のP2Pトランザクション処理を行うことになる。
【0153】
そして、P2Pトランザクション処理が終了して、NFCリーダ12からコマンドDSL_REQが送信されると、CLF31の解除部103によって、P2Pアプリ41が確定ターゲットから解除され、コマンドDSL_RESが返信される。なお、その後、再度、NFCリーダ12からポーリングコマンドが送信された場合には、前述した処理が繰り返され、P2Pアプリ41が、ターゲット候補として選択される。
【0154】
以上のように、ユースケース1では、NFCリーダ12によるポーリングに応じて、P2Pアプリ41及びESE32がターゲット候補として選択された段階で、P2Pアプリ41が確定ターゲットとなり、P2Pトランザクション処理が行われる。そして、P2Pトランザクション処理の終了後、P2Pアプリ41が確定ターゲットから解除されると、NFCリーダ12によるポーリングが再開され、P2Pアプリ41及びUICC34がターゲット候補として選択されることになる。
【0155】
すなわち、ユースケース1では、ターゲット候補の選択に際して、スキップ機能を含むP2Pメインのローテーション方式が用いられ、例えば、P2Pアプリ41、ESE32、P2Pアプリ41、UICC34の順にターゲットが選択され、P2Pアプリ41が2回に1回選択される。
【0156】
図21は、ユースケース2を説明するためのシーケンス図である。
【0157】
ユースケース2は、NFCリーダ12がP2Pアプリ専用のリーダであって、ターゲット候補選択のローテーションがESE32から開始されるケースの例である。
【0158】
図21に示すように、P2Pアプリ専用のNFCリーダ12からポーリングコマンドが送信されると、CLF31の候補選択部101は、そのポーリングコマンドをブロードキャスト送信する。ブロードキャスト送信されたポーリングコマンドは、ESE32及びUICC34にそれぞれ受信され、そのレスポンスがCLF31に返される。
【0159】
候補選択部101は、ESE32及びUICC34からのレスポンスに応じて、ESE32をターゲット候補に選択し、そのポーリングレスポンスをNFCリーダ12に返信する。
【0160】
次に、NFCリーダ12からポーリングコマンドが送信されると、候補選択部101は、ターゲット候補として、P2Pアプリ41を選択し、そのポーリングレスポンスをNFCリーダ12に返信する。これにより、ターゲット候補として、ESE32とP2Pアプリ41が選択されたことになる。
【0161】
続いて、NFCリーダ12からコマンドATR_REQが送信されると、P2Pアプリ41が確定ターゲットとされる。これにより、P2Pアプリ専用のNFCリーダ12とP2Pアプリ41の間では、所定のP2Pトランザクション処理が行われる。そして、P2Pトランザクション処理が終了すると、NFCリーダ12からコマンドDSL_REQが送信され、P2Pアプリ41が確定ターゲットから解除される。
【0162】
次に、NFCリーダ12からポーリングコマンドが送信されると、候補選択部101によって、そのポーリングコマンドがブロードキャスト送信され、ESE32及びUICC34によってそれぞれ受信される。そして、UICC34がターゲット候補に選択され、そのポーリングレスポンスがNFCリーダ12に返信される。その後、P2Pアプリ41がターゲット候補に追加され、前述した処理が繰り返されることになる。
【0163】
以上のように、ユースケース2では、NFCリーダ12によるポーリングに応じて、ESE32及びP2Pアプリ41がターゲット候補として選択された段階で、P2Pアプリ41が確定ターゲットとなり、P2Pトランザクション処理が行われる。そして、P2Pトランザクション処理の終了後、P2Pアプリ41が確定ターゲットから解除されると、NFCリーダ12によるポーリングが再開され、UICC34及びP2Pアプリ41がターゲット候補として選択されることになる。
【0164】
すなわち、ユースケース2では、ターゲット候補の選択に際して、スキップ機能を含むP2Pメインのローテーション方式が用いられ、例えば、ESE32、P2Pアプリ41、UICC34、P2Pアプリ41の順にターゲットが選択され、P2Pアプリ41が2回に1回選択される。
【0165】
図22は、ユースケース3を説明するためのシーケンス図である。
【0166】
ユースケース3は、NFCリーダ12がESE専用のリーダであって、ターゲット候補選択のローテーションがP2Pアプリ41から開始されるケースの例である。
【0167】
図22に示すように、ESE専用のNFCリーダ12からポーリングコマンドが送信されると、候補選択部101は、そのポーリングパラメータをチェックして、ポーリングがP2Pアプリ41に対するものではないと判定した場合、ターゲット候補を、P2Pアプリ41からESE32に切り替える。そして、CLF31の候補選択部101は、ポーリングコマンドをブロードキャスト送信する。
【0168】
ブロードキャスト送信されたポーリングコマンドは、ESE32及びUICC34にそれぞれ受信される。このとき、ESE32からはレスポンスがあったが、UICC34からは無応答であった場合、候補選択部101は、ターゲット候補として、ESE32を選択し、そのポーリングレスポンスをNFCリーダ12に返信する。なお、ここでは、ターゲット候補として選択されたESE32のIDmがメモリ31Aに記憶される。
【0169】
続いて、NFCリーダ12からリクエストサービス等のポーリング以外のコマンドが送信された場合、確定部102は、受信したコマンドに含まれるIDmと、メモリ31Aに記憶していたIDmとを比較する。そして、確定部102は、IDmが一致するESE32を確定ターゲットとし、そのリクエストサービスをESE32に送信する。ESE32が、リクエストサービスに応じてレスポンスを返信すると、そのレスポンスは、NFCリーダ12に送信される。これにより、ESE専用のNFCリーダ12とESE32が、CLF31を介して、所定のESEトランザクション処理を行うことになる。
【0170】
その後、RF信号が消失した場合、所定のターゲット解除条件を満たすまでは、解除処理は行われず、確定ターゲットが維持される。
【0171】
そして、再度、NFCリーダ12からポーリングコマンドが送信されると、ESE32が確定ターゲットから解除される。また、候補選択部101は、そのポーリングパラメータをチェックして、ポーリングがP2Pアプリ41に対するものではないと判定した場合、ターゲット候補を、P2Pアプリ41からUICC34に切り替える。また、候補選択部101が、そのポーリングコマンドをブロードキャスト送信すると、ESE32及びUICC34によってそれぞれ受信され、ESE32からのみレスポンスが返信される。そこで、候補選択部101は、ターゲット候補として、ESE32を選択し、そのポーリングレスポンスをNFCリーダ12に返信する。
【0172】
続いて、NFCリーダ12からリクエストサービスが送信された場合、確定部102は、IDmの比較を行い、IDmが一致するESE32を確定ターゲットとし、そのリクエストサービスをESE32に送信する。また、ESE32からのレスポンスは、NFCリーダ12に送信される。これにより、ESE専用のNFCリーダ12とESE32が、CLF31を介して、所定のESEトランザクション処理を行うことになる。
【0173】
以上のように、ユースケース3では、ターゲット候補の選択に際して、スキップ機能を含むP2Pメインのローテーション方式が用いられる。すなわち、NFCリーダ12によるポーリングに応じて、ターゲット候補を選択する段階で、ポーリングパラメータがチェックされ、P2Pアプリ41には該当しないので、ESE32又はUICC34がターゲット候補として選択される。そして、ポーリングコマンドをブロードキャスト送信して、レスポンスがあったESE32が確定ターゲットとなり、ESEトランザクション処理が行われる。
【0174】
また、RF信号が消失した場合でも、所定のターゲット解除条件を満たすまでは、確定ターゲットが維持されるため、NFCリーダ12とCLF31の近接通信が復活した場合に処理を継続することができる。
【0175】
なお、図22の例では、ESE専用のリーダについて説明したが、UICC専用のリーダに対する動作は、基本的に、ESE専用のリーダに対する動作と同一の動作となるため、その説明は省略する。
【0176】
このように、スキップ機能を含むP2Pメインのローテーション方式を採用することで、3以上のターゲットのうちの1つのターゲットが、2回に1回、ターゲット候補として選択されるので、NFCリーダ12が所望とするターゲットを確実に選択して、迅速に通信を確立することができる。
【0177】
また、シングルレスポンス方式が用いられることで、CLF31(フロントエンド)に特別な回路を実装することなく、NFCリーダ12が所望とするターゲットを確実に選択して、迅速に通信を確立することができる。
【0178】
[スキップ機能を含むP2Pメインのローテーション方式の拡張]
図23は、拡張版のスキップ機能を含むP2Pメインのローテーション方式のターゲット候補遷移図である。
【0179】
拡張版のスキップ機能を含むP2Pメインのローテーション方式では、前述した図8を参照して説明したESE32,UICC34,P2Pアプリ41に加えて、DH33上に実装されるT3T(Type 3 Tag)エミュレーションがローテーションに含まれる。この場合であっても、基本的なローテーションは図8と変らず、ターゲットとなる、P2Pアプリ41,ESE32,UICC34,T3Tのうち、P2Pアプリ41が2回に1回必ず選択されることになる。
【0180】
具体的には、図23に示すように、ローテーションの順番が、P2Pアプリ41を中心にして、例えば、P2Pアプリ41,ESE32,P2Pアプリ41,UICC34,P2Pアプリ41,T3T,P2Pアプリ41の順に行われる。また、前述したように、例えば、P2Pアプリ41に対するポーリングではない場合には、ローテーションが、P2Pアプリ41をスキップして、ESE32、UICC34、又はT3Tに、強制的に切り替えられる。
【0181】
このように、P2Pアプリ41以外のターゲットが増えても、P2Pアプリ41を中心にして、P2Pアプリ41が2回に1回必ず選択されるので、NFCリーダ12では、確実にP2Pアプリ41に対する動作が行われることになる。
【0182】
[本技術を適用したコンピュータの説明]
前述した一連の処理は、ハードウェアにより行うこともできるし、ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には、そのソフトウェアを構成するプログラムが、汎用のコンピュータ等にインストールされる。
【0183】
そこで、図24は、前述した一連の処理を実行するプログラムがインストールされるコンピュータの一実施の形態の構成例を示している。
【0184】
プログラムは、コンピュータ200に内蔵されているハードディスク等の記憶部208やROM(Read Only Memory)202に予め記録しておくことができる。
【0185】
あるいはまた、プログラムは、フレキシブルディスク、CD-ROM(Compact Disc Read Only Memory),MO(Magneto Optical)ディスク,DVD(Digital Versatile Disc)、磁気ディスク、半導体メモリなどのリムーバブルメディア211に、一時的あるいは永続的に格納(記録)しておくことができる。このようなリムーバブルメディア211は、いわゆるパッケージソフトウエアとして提供することができる。
【0186】
なお、プログラムは、前述したようなリムーバブルメディア211からコンピュータ200にインストールする他、ダウンロードサイトから、デジタル衛星放送用の人工衛星を介して、コンピュータ200に無線で転送したり、LAN(Local Area Network)、インターネットといったネットワークを介して、コンピュータ200に有線で転送し、コンピュータ200では、そのようにして転送されてくるプログラムを、通信部209で受信し、記憶部208にインストールすることができる。
【0187】
コンピュータ200は、CPU(Central Processing Unit)201を内蔵している。CPU201には、バス204を介して、入出力インタフェース205が接続されており、CPU201は、入出力インタフェース205を介して、ユーザによって、キーボードや、マウス、マイク等で構成される入力部206が操作等されることにより指令が入力されると、それに従って、ROM202に格納されているプログラムを実行する。あるいは、また、CPU201は、記憶部208に格納されているプログラム、衛星若しくはネットワークから転送され、通信部209で受信されて記憶部208にインストールされたプログラム、又はドライブ210に装着されたリムーバブルメディア211から読み出されて記憶部208にインストールされたプログラムを、RAM(Random Access Memory)203にロードして実行する。これにより、CPU201は、前述したフローチャートにしたがった処理、あるいは前述したブロック図の構成により行われる処理を行う。そして、CPU201は、その処理結果を、必要に応じて、例えば、入出力インタフェース205を介して、LCD(Liquid Crystal Display)やスピーカ等で構成される出力部207から出力、あるいは、通信部209から送信、さらには、記憶部208に記録等させる。
【0188】
ここで、本明細書において、コンピュータ200に各種の処理を行わせるためのプログラムを記述する処理ステップは、必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく、並列的あるいは個別に実行される処理(例えば、並列処理あるいはオブジェクトによる処理)も含むものである。
【0189】
また、プログラムは、1のコンピュータにより処理されるものであってもよいし、複数のコンピュータによって分散処理されるものであってもよい。さらに、プログラムは、遠方のコンピュータに転送されて実行されるものであってもよい。
【0190】
また、本技術の実施の形態は、前述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【0191】
さらに、本技術は、以下の構成とすることも可能である。
【0192】
[1]
それぞれが所定の処理を実行する複数のターゲットと、
前記複数のターゲットの中から、外部装置の通信対象となる確定ターゲットを選択して、前記外部装置との近接通信を行うフロントエンドと
を備え、
前記フロントエンドは、前記確定ターゲットの候補を選択するためのコマンドの送信を行うに際し、その送信先として、所定のターゲットを2回に1回選択する
通信装置。
[2]
前記フロントエンドは、前記外部装置からポーリングコマンドを受信した場合、そのコマンドを、前記所定のターゲット以外の複数のターゲットにブロードキャスト送信する
[1]に記載の通信装置。
[3]
前記所定のターゲットは、P2P(Peer to Peer)のアプリケーションである
[1]又は[2]に記載の通信装置。
[4]
前記複数のターゲットのうち、前記所定のターゲットを除く他のターゲットは、セキュアエレメント及びUICC(Universal Integrated Circuit Card)のいずれか一方又は双方を含んでいる
[3]に記載の通信装置。
[5]
前記フロントエンドは、前記確定ターゲットの候補として選択したターゲットのうち、前記外部装置の通信対象となるターゲットを、前記確定ターゲットとして確定する
[1]乃至[4]のいずれかに記載の通信装置。
[6]
前記フロントエンドは、前記確定ターゲットの候補として選択したターゲットから得られる前記ターゲットの識別子と、前記外部装置が送信したコマンドに含まれる識別子が一致する場合、当該確定ターゲットの候補を、前記確定ターゲットとして確定する
[5]に記載の通信装置。
[7]
前記フロントエンドは、前記外部装置から、前記確定ターゲットの候補として選択したターゲットを前記確定ターゲットとして確定するためのコマンドを受信した場合、当該確定ターゲットの候補を、前記確定ターゲットとして確定する
[5]に記載の通信装置。
[8]
前記フロントエンドは、所定のターゲット解除条件に基づいて、前記確定ターゲットを、前記外部装置の通信対象から解除する
[5]乃至[7]のいずれかに記載の通信装置。
[9]
前記フロントエンドは、前記外部装置との近接通信が切断された後、前記外部装置からポーリングコマンドを受信した場合、前記確定ターゲットを解除する
[8]に記載の通信装置。
[10]
前記フロントエンドは、前記外部装置から、前記外部装置と前記確定ターゲットとの通信を終了するためのコマンドを受信した場合、前記確定ターゲットを解除する
[8]に記載の通信装置。
[11]
それぞれが所定の処理を実行する複数のターゲットと、
前記複数のターゲットの中から、外部装置の通信対象となる確定ターゲットを選択して、前記外部装置との近接通信を行うフロントエンドと
を備える通信装置の制御方法であって、
前記フロントエンドが、前記確定ターゲットの候補を選択するためのコマンドの送信を行うに際し、その送信先として、所定のターゲットを2回に1回選択する
ステップを含む制御方法。
[12]
それぞれが所定の処理を実行する複数のターゲットと、
前記複数のターゲットの中から、外部装置の通信対象となる確定ターゲットを選択して、前記外部装置との近接通信を行うフロントエンドと
を備える通信装置の制御用のプログラムであって、
前記確定ターゲットの候補を選択するためのコマンドの送信を行うに際し、その送信先として、所定のターゲットを2回に1回選択する
ステップを含む処理を、通信装置のコンピュータに実行させるプログラム。
【符号の説明】
【0193】
11 NFCデバイス, 12 NFCリーダ, 31 CLF, 31A メモリ, 32 ESE, 33 DH, 34 UICC, 41 P2Pアプリ, 101 候補選択部, 102 確定部, 103 解除部, 104 無線通信制御部, 200 コンピュータ, 201 CPU

【特許請求の範囲】
【請求項1】
それぞれが所定の処理を実行する複数のターゲットと、
前記複数のターゲットの中から、外部装置の通信対象となる確定ターゲットを選択して、前記外部装置との近接通信を行うフロントエンドと
を備え、
前記フロントエンドは、前記確定ターゲットの候補を選択するためのコマンドの送信を行うに際し、その送信先として、所定のターゲットを2回に1回選択する
通信装置。
【請求項2】
前記フロントエンドは、前記外部装置からポーリングコマンドを受信した場合、そのコマンドを、前記所定のターゲット以外の複数のターゲットにブロードキャスト送信する
請求項1に記載の通信装置。
【請求項3】
前記所定のターゲットは、P2P(Peer to Peer)のアプリケーションである
請求項1に記載の通信装置。
【請求項4】
前記複数のターゲットのうち、前記所定のターゲットを除く他のターゲットは、セキュアエレメント及びUICC(Universal Integrated Circuit Card)のいずれか一方又は双方を含んでいる
請求項3に記載の通信装置。
【請求項5】
前記フロントエンドは、前記確定ターゲットの候補として選択したターゲットのうち、前記外部装置の通信対象となるターゲットを、前記確定ターゲットとして確定する
請求項1に記載の通信装置。
【請求項6】
前記フロントエンドは、前記確定ターゲットの候補として選択したターゲットから得られる前記ターゲットの識別子と、前記外部装置が送信したコマンドに含まれる識別子が一致する場合、当該確定ターゲットの候補を、前記確定ターゲットとして確定する
請求項5に記載の通信装置。
【請求項7】
前記フロントエンドは、前記外部装置から、前記確定ターゲットの候補として選択したターゲットを前記確定ターゲットとして確定するためのコマンドを受信した場合、当該確定ターゲットの候補を、前記確定ターゲットとして確定する
請求項5に記載の通信装置。
【請求項8】
前記フロントエンドは、所定のターゲット解除条件に基づいて、前記確定ターゲットを、前記外部装置の通信対象から解除する
請求項5に記載の通信装置。
【請求項9】
前記フロントエンドは、前記外部装置との近接通信が切断された後、前記外部装置からポーリングコマンドを受信した場合、前記確定ターゲットを解除する
請求項8に記載の通信装置。
【請求項10】
前記フロントエンドは、前記外部装置から、前記外部装置と前記確定ターゲットとの通信を終了するためのコマンドを受信した場合、前記確定ターゲットを解除する
請求項8に記載の通信装置。
【請求項11】
それぞれが所定の処理を実行する複数のターゲットと、
前記複数のターゲットの中から、外部装置の通信対象となる確定ターゲットを選択して、前記外部装置との近接通信を行うフロントエンドと
を備える通信装置の制御方法であって、
前記フロントエンドが、前記確定ターゲットの候補を選択するためのコマンドの送信を行うに際し、その送信先として、所定のターゲットを2回に1回選択する
ステップを含む制御方法。
【請求項12】
それぞれが所定の処理を実行する複数のターゲットと、
前記複数のターゲットの中から、外部装置の通信対象となる確定ターゲットを選択して、前記外部装置との近接通信を行うフロントエンドと
を備える通信装置の制御用のプログラムであって、
前記確定ターゲットの候補を選択するためのコマンドの送信を行うに際し、その送信先として、所定のターゲットを2回に1回選択する
ステップを含む処理を、通信装置のコンピュータに実行させるプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate


【公開番号】特開2013−41349(P2013−41349A)
【公開日】平成25年2月28日(2013.2.28)
【国際特許分類】
【出願番号】特願2011−176492(P2011−176492)
【出願日】平成23年8月12日(2011.8.12)
【出願人】(504134520)フェリカネットワークス株式会社 (129)
【Fターム(参考)】