(57)【要約】【課題】より短い時間で通信を確立する。【解決手段】NFCデバイス５１は、それぞれが独立した処理を実行する複数のセキュアエレメント６２−０，６２−１，６２−２と、複数のセキュアエレメント６２−０，６２−１，６２−２を制御するとともに、複数のセキュアエレメント６２−０，６２−１，６２−２に共通に使用され、外部NFCデバイス５２と近接通信するフロントエンド６１とを備え、フロントエンド６１は、起動時に、複数のセキュアエレメント６２−０，６２−１，６２−２に対して通信のための異なるタイムスロットを割り当てる。本発明は、ICカードに適用することができる。【選択図】図１
2011049778.tif 000002
【特許請求の範囲】
【請求項１】
それぞれが独立した処理を実行する複数のエレメントと、
複数の前記エレメントを制御するとともに、前記複数のエレメントに共通に使用され、外部の装置と近接通信するフロントエンドと
を備え、
前記フロントエンドは、起動時に、複数の前記エレメントに対して通信のための異なるタイムスロットを割り当てる
情報処理装置。
【請求項２】
前記エレメントは、１つの筐体内に収容され、有線で接続されており、
前記起動時は、電力が供給されたとき、または前記エレメントが取り外されるか、もしくは追加されたときを含む
請求項１に記載の情報処理装置。
【請求項３】
前記フロントエンドは、前記エレメントに、電気的に接続された順番に応じたタイミングの前記タイムスロットを割り当てる
請求項２に記載の情報処理装置。
【請求項４】
複数の前記エレメントは、着脱が可能なエレメントと固定されたエレメントからなり、
固定された前記エレメントは、割り当てられた前記タイムスロットを不揮発的に記憶し、着脱が可能な前記エレメントは、前記タイムスロットを揮発的に記憶する
請求項３に記載の情報処理装置。
【請求項５】
前記フロントエンドは、固定された前記エレメントに、最先のタイミングの前記タイムスロットを割り当て、着脱が可能な前記エレメントに、固定された前記エレメントより遅いタイミングの前記タイムスロットを割り当てる
請求項４に記載の情報処理装置。
【請求項６】
前記フロントエンドは、前記複数のエレメントに対して、電気的に接続された順番にポーリングのリクエストを送信し、前記リクエストに対する前記エレメント毎のレスポンスに含まれる、前記エレメントを識別する識別情報を取得して記憶するとともに、前記エレメントに、前記識別情報を取得した順番に応じたタイミングの前記タイムスロットを割り当てる
請求項４に記載の情報処理装置。
【請求項７】
前記フロントエンドは、前記複数のエレメントに対する前記外部の装置からのポーリングのリクエストを受信したとき、前記外部の装置に対して、前記エレメント毎に割り当てられた前記タイムスロットで、記憶された前記エレメント毎の前記識別情報を付加したレスポンスを、前記エレメント毎の前記レスポンスとして送信する
請求項６に記載の情報処理装置。
【請求項８】
前記フロントエンドは、前記複数のエレメントに対する前記外部の装置からのポーリングのリクエストを受信する毎に、前記エレメント毎に割り当てられた前記タイムスロットを変更し、前記外部の装置に対して、変更された前記エレメント毎の前記タイムスロットで、記憶された前記エレメント毎の前記識別情報を付加したレスポンスを、前記エレメント毎の前記レスポンスとして送信する
請求項６に記載の情報処理装置。
【請求項９】
前記フロントエンドは、前記複数のエレメントのうちの固定された前記エレメントの前記識別情報を予め記憶するとともに、固定された前記エレメントに所定のタイミングのタイムスロットを割り当て、前記複数のエレメントに対する前記外部の装置からのポーリングのリクエストを受信したとき、前記外部の装置に対して、前記所定のタイミングのタイムスロットで、記憶された前記識別情報を付加した前記レスポンスを、固定された前記エレメントの前記レスポンスとして送信する
請求項４に記載の情報処理装置。
【請求項１０】
固定された前記エレメントの前記タイムスロットは、製造時に予め割り当てられており、
前記フロントエンドは、前記複数のエレメントに対する前記外部の装置からのポーリングのリクエストを受信したとき、前記外部の装置に対して、製造時に予め割り当てられた前記タイムスロットで、記憶された前記識別情報を付加した前記レスポンスを、固定された前記エレメントの前記レスポンスとして送信する
請求項９に記載の情報処理装置。
【請求項１１】
固定された前記エレメントは、他の前記エレメントを制御するコントローラとして機能する
請求項４に記載の情報処理装置。
【請求項１２】
それぞれが独立した処理を実行する複数のエレメントと、
複数の前記エレメントを制御するとともに、前記複数のエレメントに共通に使用され、外部の装置と近接通信するフロントエンドと
を備える情報処理装置のプログラムにおいて、
前記フロントエンドが、起動時に、複数の前記エレメントに対して通信のための異なるタイムスロットを割り当てる
処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置およびプログラムに関し、特に、より短い時間で通信を確立するようにした情報処理装置およびプログラムに関する。
【背景技術】
【０００２】
本出願人は、単一の周波数の搬送波を利用した、電磁誘導による近接通信（NFC（Near Field Communication））について先に提案した（例えば、特許文献１）。単一の周波数の搬送波が利用される場合、１つの装置に対して複数の他の装置が同時に通信を行うと、衝突（コリジョン）が起き、１つの装置は他の装置からの信号を有効に受信ができなくなる。そこで、先の提案においては、各装置が、他の装置のRF（Radio Frequency）フィールドが存在しないことを確認してから自らRFフィールドを発生するようにした。
【０００３】
ところで、装置（例えば装置Ａ）が他の１つの装置（例えば装置Ｂ）と近接通信する場合において、装置Ａ内に複数の独立した装置（例えば装置ａ、装置ｂ、および装置ｃ）が収容され、装置ａ、装置ｂ、および装置ｃが有線で相互に接続されていることがある。この場合、装置ＡはRFフィールドを１つしか発生することができない。すなわち、装置ａ、装置ｂ、および装置ｃは、他の装置とのRFフィールドによる通信部を共用しており、装置ａ、装置ｂ、および装置ｃのいずれか１つのみが装置Ａとして、他の装置Ｂと近接通信を行うことができる。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００１−２８６８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ところで、装置Ａの起動時においては、通信部と、装置ａ、装置ｂ、および装置ｃそれぞれとの間で通信が確立される必要があるが、実際には、装置ａ、装置ｂ、および装置ｃを制御するコントローラが、通信部を介してポーリングを送信した後に、装置ａ、装置ｂ、および装置ｃそれぞれのタイムスロットを設定している。したがって、通信部と、装置ａ、装置ｂ、および装置ｃそれぞれとの間の通信に加え、コントローラと通信部との間の通信も行われるため、装置Ａの起動時における通信の確立に時間がかかっていた。
【０００６】
本発明は、このような状況に鑑みてなされたものであり、起動時に、より短い時間で通信を確立するようにするものである。
【課題を解決するための手段】
【０００７】
本発明の一側面の情報処理装置は、それぞれが独立した処理を実行する複数のエレメントと、複数の前記エレメントを制御するとともに、前記複数のエレメントに共通に使用され、外部の装置と近接通信するフロントエンドとを備え、前記フロントエンドは、起動時に、複数の前記エレメントに対して通信のための異なるタイムスロットを割り当てる。
【０００８】
前記エレメントは、１つの筐体内に収容され、有線で接続されており、前記起動時は、電力が供給されたとき、または前記エレメントが取り外されるか、もしくは追加されたときを含む。
【０００９】
前記フロントエンドには、前記エレメントに、電気的に接続された順番に応じたタイミングの前記タイムスロットを割り当てさせることができる。
【００１０】
複数の前記エレメントは、着脱が可能なエレメントと固定されたエレメントからなり、固定された前記エレメントには、割り当てられた前記タイムスロットを不揮発的に記憶させ、着脱が可能な前記エレメントは、前記タイムスロットを揮発的に記憶させることができる。
【００１１】
前記フロントエンドには、固定された前記エレメントに、最先のタイミングの前記タイムスロットを割り当てさせ、着脱が可能な前記エレメントに、固定された前記エレメントより遅いタイミングの前記タイムスロットを割り当てさせることができる。
【００１２】
前記フロントエンドには、前記複数のエレメントに対して、電気的に接続された順番にポーリングのリクエストを送信させ、前記リクエストに対する前記エレメント毎のレスポンスに含まれる、前記エレメントを識別する識別情報を取得して記憶させるとともに、前記エレメントに、前記識別情報を取得した順番に応じたタイミングの前記タイムスロットを割り当てさせることができる。
【００１３】
前記フロントエンドには、前記複数のエレメントに対する前記外部の装置からのポーリングのリクエストを受信したとき、前記外部の装置に対して、前記エレメント毎に割り当てられた前記タイムスロットで、記憶された前記エレメント毎の前記識別情報を付加したレスポンスを、前記エレメント毎の前記レスポンスとして送信させることができる。
【００１４】
前記フロントエンドには、前記複数のエレメントに対する前記外部の装置からのポーリングのリクエストを受信する毎に、前記エレメント毎に割り当てられた前記タイムスロットを変更させ、前記外部の装置に対して、変更された前記エレメント毎の前記タイムスロットで、記憶された前記エレメント毎の前記識別情報を付加したレスポンスを、前記エレメント毎の前記レスポンスとして送信させることができる。
【００１５】
前記フロントエンドには、前記複数のエレメントのうちの固定された前記エレメントの前記識別情報を予め記憶させるとともに、固定された前記エレメントに所定のタイミングのタイムスロットを割り当てさせ、前記複数のエレメントに対する前記外部の装置からのポーリングのリクエストを受信したとき、前記外部の装置に対して、前記所定のタイミングのタイムスロットで、記憶された前記識別情報を付加した前記レスポンスを、固定された前記エレメントの前記レスポンスとして送信させることができる。
【００１６】
固定された前記エレメントの前記タイムスロットは、製造時に予め割り当てられており、前記フロントエンドには、前記複数のエレメントに対する前記外部の装置からのポーリングのリクエストを受信したとき、前記外部の装置に対して、製造時に予め割り当てられた前記タイムスロットで、記憶された前記識別情報を付加した前記レスポンスを、固定された前記エレメントの前記レスポンスとして送信させることができる。
【００１７】
固定された前記エレメントは、他の前記エレメントを制御するコントローラとして機能することができる。
【００１８】
本発明の一側面のプログラムは、それぞれが独立した処理を実行する複数のエレメントと、複数の前記エレメントを制御するとともに、前記複数のエレメントに共通に使用され、外部の装置と近接通信するフロントエンドとを備える情報処理装置のプログラムにおいて、前記フロントエンドが、起動時に、複数の前記エレメントに対して通信のための異なるタイムスロットを割り当てる処理をコンピュータに実行させる。
【００１９】
本発明の一側面においては、フロントエンドが、起動時に、複数のエレメントに対して通信のための異なるタイムスロットを割り当てる。
【発明の効果】
【００２０】
本発明の一側面によれば、起動時に、より短い時間で通信を確立することが可能となる。
【図面の簡単な説明】
【００２１】
【図１】本発明のNFC通信システムの一実施の形態の構成を示すブロック図である。
【図２】フロントエンドの一実施の形態の機能的構成を示すブロック図である。
【図３】セキュアエレメントの一実施の形態の機能的構成を示すブロック図である。
【図４】Set Timeslotリクエスト／レスポンスメッセージのパケット構造を示す図である。
【図５】Pollingリクエスト／レスポンスメッセージのパケット構造を示す図である。
【図６】Readリクエスト／レスポンスメッセージのパケット構造を示す図である。
【図７】Writeリクエスト／レスポンスメッセージのパケット構造を示す図である。
【図８】起動時におけるタイムスロット設定処理を説明する図である。
【図９】外部NFCデバイスからポーリングする場合の処理を説明する図である。
【図１０】本発明のNFC通信システムの他の実施の形態の構成を示すブロック図である。
【図１１】フロントエンドの他の実施の形態の機能的構成を示すブロック図である。
【図１２】起動時におけるNFCデバイス内ポーリング処理を説明する図である。
【図１３】外部NFCデバイスからポーリングする場合の処理を説明する図である。
【図１４】外部NFCデバイスからポーリングする場合の処理を説明する図である。
【図１５】外部NFCデバイスからポーリングする場合の処理を説明する図である。
【図１６】起動時におけるタイムスロット設定処理を説明する図である。
【図１７】外部NFCデバイスからポーリングする場合の処理を説明する図である。
【図１８】起動時におけるタイムスロット設定処理を説明する図である。
【図１９】外部NFCデバイスからポーリングする場合の処理を説明する図である。
【図２０】NFCデバイスからデータを読み出す場合の処理を説明する図である。
【図２１】NFCデバイスへデータを書き込む場合の処理を説明する図である。
【発明を実施するための形態】
【００２２】
以下、本発明の実施の形態について図を参照して説明する。
【００２３】
［NFC通信システムの構成］
図１は、本発明を適用したNFC通信システムの一実施の形態の構成を表している。この実施の形態において、NFC通信システムは、NFCデバイス５１と外部NFCデバイス５２とにより構成されている。
【００２４】
NFCデバイス５１は、例えばIC（Integrated Circuit）カード、携帯電話機、PDA（Personal Digital Assistant）、腕時計、ペン、パーソナルコンピュータ等の、主に携帯自在の装置で構成され、外部NFCデバイス５２は、例えばリーダ／ライタで構成されるが、もちろんこれらに限定されるものではない。これらは、例えばISM（Industrial Scientific Medical）バンドの13.56MHzの周波数の搬送波を用いて、数10cm以内（接触している場合を含む）の距離で、近接通信を行う。
【００２５】
NFCデバイス５１は、フロントエンド６１、セキュアエレメント６２−０，６２−１、および６２−２を、１つの筺体内に収容している。セキュアエレメント６２−０はNFCデバイス５１の製造時に予め組み込まれ、固定される。これに対してセキュアエレメント６２−１，６２−２は、NFCデバイス５１の管理者（NFCデバイス５１をユーザに提供する者）により必要に応じて着脱される。フロントエンド６１とセキュアエレメント６２−０，６２−１，６２−２とは、図１に示されるように、コード等の有線で相互に接続（スター接続）されているが、例えば、バスで接続（バス接続）されていてもよい。
【００２６】
フロントエンド６１は、セキュアエレメント６２−０，６２−１，６２−２（以下、これらを個々に区別する必要がない場合、単にセキュアエレメント６２と称する）の動作を制御する。特に、フロントエンド６１は、製造時に、セキュアエレメント６２−０に対して通信のためのタイムスロットを割り当てる処理を行うとともに、起動時に、複数のセキュアエレメント６２−０，６２−１，６２−２に対して通信のための異なるタイムスロットを割り当てる処理を行う。起動時とは、電力が供給されたとき、またはセキュアエレメント６２が取り外されるか、もしくは追加されたときを含んでいる。
【００２７】
また、フロントエンド６１は、NFCデバイス５１として外部NFCデバイス５２と近接通信する。すなわち、フロントエンド６１は、セキュアエレメント６２−０，６２−１，６２−２に共通に使用され、外部NFCデバイス５２と近接通信する機能を有する。このため、フロントエンド６１は、外部NFCデバイス５２からの信号を、セキュアエレメント６２−０，６２−１，６２−２に供給する。また、セキュアエレメント６２−０，６２−１，６２−２のいずれか１つからの信号は残りの２つ、および、外部NFCデバイス５２に供給される。なお、信号は、パケット単位で授受される。
【００２８】
セキュアエレメント６２−０，６２−１，６２−２は、それぞれ異なるアプリケーションで動作し、独立した処理をセキュアに行う。各アプリケーションにはそれぞれを識別する識別情報としてのシステムコードが割り当てられている。例えば、セキュアエレメント６２−０は、システムコードＳＣ０が割り当てられている鉄道用の定期券として機能し、セキュアエレメント６２−１は、システムコードＳＣ１が割り当てられ、所定の加盟店での支払いに使用されるプリペイドカードとして機能し、セキュアエレメント６２−２は、システムコードＳＣ２が割り当てられているユーザの勤務先のID（Identification）カードとして機能する。例えば、NFCデバイス５１が所定のシステムコードのアプリケーションで動作する外部NFCデバイス５２に近接配置されたとき、各セキュアエレメント６２のうち、そのシステムコードのアプリケーションに対応するものが外部NFCデバイス５２と通信する。
【００２９】
また、セキュアエレメント６２−０，６２−１，６２−２には、各セキュアエレメントを識別する識別情報としての識別番号ＩＤ０，ＩＤ１，ＩＤ２が、それぞれ割り当てられている。
【００３０】
各アプリケーションの管理者は、自分自身が管理するアプリケーションのシステムコードは知っているが、他の管理者が管理するアプリケーションのシステムコードは知らない。各セキュアエレメント６２は、システムコードを指定することで対応するアプリケーションの他のセキュアエレメント６２の存在を把握し、把握した各セキュアエレメント６２のIDを個々に取得して、そのIDに基づいて、個々のセキュアエレメント６２と通信する。
【００３１】
なお、セキュアエレメント６２−０は、従来のNFCデバイスにおいて各セキュアエレメントを制御するベースバンドコントローラとして機能させることもできる。すなわち、セキュアエレメント６２−０が、他のセキュアエレメント６２の動作を制御するようにしてもよい。
【００３２】
図２は、フロントエンド６１の一実施の形態の機能的構成を表している。フロントエンド６１は、送信部８１、受信部８２、およびメッセージ処理部８３を有している。
【００３３】
送信部８１は、外部NFCデバイス５２またはセキュアエレメント６２に信号を送信し、受信部８２は、外部NFCデバイス５２またはセキュアエレメント６２からの信号を受信する。メッセージ処理部８３は、送受信される信号としての各種メッセージに応じた処理を行う。
【００３４】
図３は、セキュアエレメント６２の一実施の形態の機能的構成を表している。セキュアエレメント６２は、受信部１０１、送信部１０２、メッセージ処理部１０３、および記憶部１０４を有している。
【００３５】
受信部１０１は、フロントエンド６１からの信号を受信する。送信部１０２は、フロントエンド６１に信号を送信する。送信部１０２は、タイムスロットが割り当てられるまでは、ランダムなタイミングのタイムスロットで通信を行う機能を有する。メッセージ処理部１０３は、送受信される信号としての各種メッセージに応じた処理を行う
【００３６】
記憶部１０４は、各アプリケーションのシステムコードと、各セキュアエレメント６２を識別する識別情報としての識別番号を不揮発状態で記憶する。また、セキュアエレメント６２のうち、NFCデバイス５１に製造時に予め組み込まれ、固定されるセキュアエレメント６２−０は、設定されたタイムスロット番号を不揮発的に記憶する。製造後に装着されるセキュアエレメント６２−１，６２−２は、設定されたタイムスロット番号を揮発的に記憶する。
【００３７】
次に、図１のNFC通信システムにおいて使用されるメッセージのパケット構造について、図４乃至図７を参照して説明する。
【００３８】
図４は、Set Timeslotリクエスト／レスポンスメッセージのパケット構造を表している。Set Timeslotリクエスト／レスポンスメッセージは、セキュアエレメント６２が記憶しているタイムスロット番号を設定、変更する際に使用される。図４の上側に示されるように、Set Timeslotリクエストメッセージには、Set Timeslotリクエストコード、識別番号、およびタイムスロット（タイムスロット番号）が付加される。また、図４の下側に示されるように、Set Timeslotレスポンスメッセージには、Set Timeslotレスポンスコード、識別番号、および、セキュアエレメント６２の状態を表すステータスが付加される。
【００３９】
セキュアエレメント６２は、Set Timeslotリクエストメッセージを受信し、Set Timeslotリクエストメッセージに含まれる識別番号と、自身で記憶している識別番号とが一致した場合に、タイムスロット番号を新たに設定し、Set Timeslotレスポンスメッセージを返す。
【００４０】
図５は、Pollingリクエスト／レスポンスメッセージのパケット構造を表している。Pollingリクエスト／レスポンスメッセージは、外部NFCデバイス５２が、通信相手としてのセキュアエレメント６２を捕捉する際に使用される。図５の上側に示されるように、Pollingリクエストメッセージには、Pollingリクエストコード、システムコード、リクエストコード、およびタイムスロット（タイムスロット番号）が付加される。システムコードには、セキュアエレメント６２のアプリケーション番号が記述される。NFCデバイス５１が外部NFCデバイス５２からのPollingリクエストメッセージを受信したとき、このシステムコードに記述されたアプリケーション番号に対応するアプリケーションを有するセキュアエレメント６２がPollingレスポンスメッセージを返す。ただし、このシステムコードにFFFFhが記述されていた場合、Pollingリクエストメッセージを受信した全てのセキュアエレメント６２がPollingレスポンスメッセージを返す。
【００４１】
タイムスロットには、例えば０乃至１５のうちの１つのタイムスロット番号が記述される。Pollingリクエストメッセージを受信したセキュアエレメント６２は、ここに記述されている値以下のタイムスロット番号のタイミングでPollingレスポンスメッセージを返す。例えば、ここにタイムスロット番号の最大値１５が記述されていた場合、Pollingリクエストメッセージを受信したセキュアエレメント６２は、０乃至１５のうちの任意の値のタイムスロット番号のタイミングでPollingレスポンスメッセージを返す。このとき、NFCデバイス５１としては、最大１６個のPollingレスポンスメッセージを返すことができる。言い換えると、タイムスロットに記述される値は、NFCデバイス５１において設定されるタイムスロット番号の最大値を決定する。より具体的には、Pollingリクエストメッセージのタイムスロットに０が記述されている場合、NFCデバイス５１としては、最大１個のPollingレスポンスメッセージを返すことができ、タイムスロットに１が記述されている場合、NFCデバイス５１は、最大２個のPollingレスポンスメッセージを返すことができる。また、Pollingリクエストメッセージのタイムスロットに３が記述されている場合、NFCデバイス５１としては、最大４個のPollingレスポンスメッセージを返すことができ、タイムスロットに７が記述されている場合、NFCデバイス５１は、最大８個のPollingレスポンスメッセージを返すことができる。そして、タイムスロットに１５が記述されている場合、NFCデバイス５１は、最大１６個のPollingレスポンスメッセージを返すことができる。なお、リクエストコードは必要に応じて使用される。
【００４２】
また、図５の下側に示されるように、Pollingレスポンスメッセージには、Pollingレスポンスコード、識別番号、および追加情報が付加される。識別番号には、Pollingレスポンスメッセージを返すセキュアエレメント６２の識別番号が記述され、追加情報には、所定のデータが挿入される。
【００４３】
図６は、Readリクエスト／レスポンスメッセージのパケット構造を表している。Readリクエスト／レスポンスメッセージは、外部NFCデバイス５２が、セキュアエレメント６２が記憶しているデータを読み出す際に使用される。図６の上側に示されるように、Readリクエストメッセージには、Readリクエストコード、識別番号、およびパラメータが付加される。また、図６の下側に示されるように、Readレスポンスメッセージには、Readレスポンスコード、識別番号、およびパラメータが付加される。パラメータには、読み出されるデータに関するパラメータが記述される。
【００４４】
セキュアエレメント６２は、Readリクエストメッセージを受信したとき、Readリクエストメッセージに含まれる識別番号と、自身で記憶している識別番号とが一致した場合に、要求のあったデータを読み出すとともに、Readレスポンスメッセージを送信する。
【００４５】
図７は、Writeリクエスト／レスポンスメッセージのパケット構造を表している。Writeリクエスト／レスポンスメッセージは、外部NFCデバイス５２が、セキュアエレメント６２にデータを書き込む際に使用される。図７の上側に示されるように、Writeリクエストメッセージには、Writeリクエストコード、識別番号、およびパラメータが付加される。また、図７の下側に示されるように、Writeレスポンスメッセージには、Writeレスポンスコード、識別番号、およびパラメータが付加される。パラメータには、書き込まれるデータに関するパラメータが記述される。
【００４６】
セキュアエレメント６２は、Writeリクエストメッセージを受信したとき、Writeリクエストメッセージに含まれる識別番号と、自身で記憶している識別番号とが一致した場合に、要求のあったデータを書き込むとともに、Writeレスポンスメッセージを送信する。
【００４７】
［起動時のタイムスロット設定処理］
次に、図８を参照して、NFCデバイス５１の起動時におけるタイムスロット設定処理について説明する。
【００４８】
ここで、セキュアエレメント６２−０は、NFCデバイス５１の製造時に予め組み込まれ、セキュアエレメント６２−１，６２−２は、NFCデバイス５１の管理者により、順番に、NFCデバイス５１に装着されたものとする。すなわち、セキュアエレメント６２−０，６２−１，６２−２は、その順番でNFCデバイス５１に装着（電気的に接続）されており、フロントエンド６１は、セキュアエレメント６２それぞれの識別番号とともに、セキュアエレメント６２それぞれの接続が検出された順番を知っているものとする。
【００４９】
ステップＳ１１において、フロントエンド６１の送信部８１は、Set Timeslotリクエストメッセージを、最初に接続が検出され、識別番号がＩＤ０であるセキュアエレメント６２−０に対して送信する。このリクエストメッセージには、メッセージ処理部８３によって、タイムスロット番号として、最小の値０が設定される。
【００５０】
ステップＳ２１において、識別番号がＩＤ０であるセキュアエレメント６２−０は、その受信部１０１でこのリクエストメッセージを受信すると、記憶部１０４はそのタイムスロット番号０を不揮発的に記憶する。その結果、以後、セキュアエレメント６２−０は、記憶したタイムスロット番号０のタイミングで通信する。このタイムスロット番号０は最も早いタイミングの値なので、セキュアエレメント６２−０は、他のセキュアエレメント６２より時間的に優先して通信することができる。
【００５１】
ステップＳ２２において、セキュアエレメント６２−０の送信部１０２は、Set Timeslotレスポンスメッセージを、リクエストメッセージの送信元であるフロントエンド６１に送信する。このレスポンスメッセージには、メッセージ処理部１０３によって、送信者の識別番号としてＩＤ０が付加されるとともに、確認のため、設定、記憶したタイムスロット番号０がステータスとして付加されている。
【００５２】
ステップＳ１２において、フロントエンド６１の受信部８２は、このレスポンスメッセージを受信することで、タイムスロット番号がセキュアエレメント６２−０に記憶されたことを確認することができる。
【００５３】
ステップＳ１３において、フロントエンド６１の送信部８１は、Set Timeslotリクエストメッセージを、２番目に接続が検出され、識別番号がＩＤ１であるセキュアエレメント６２−１に対して送信する。このリクエストメッセージには、メッセージ処理部８３によって、タイムスロット番号として、最小の値０の次に早いタイミングのタイムスロット番号１が設定される。
【００５４】
ステップＳ３１において、識別番号がＩＤ１であるセキュアエレメント６２−１は、その受信部１０１でこのリクエストメッセージを受信すると、記憶部１０４はそのタイムスロット番号０を揮発的に記憶する。その結果、以後、セキュアエレメント６２−１は、記憶したタイムスロット番号１のタイミングで通信する。
【００５５】
ステップＳ３２において、セキュアエレメント６２−１の送信部１０２は、Set Timeslotレスポンスメッセージを、リクエストメッセージの送信元であるフロントエンド６１に送信する。このレスポンスメッセージには、メッセージ処理部１０３によって、送信者の識別番号としてＩＤ１が付加されるとともに、確認のため、設定、記憶したタイムスロット番号１がステータスとして付加されている。
【００５６】
ステップＳ１４において、フロントエンド６１の受信部８２は、このレスポンスメッセージを受信することで、タイムスロット番号がセキュアエレメント６２−１に記憶されたことを確認することができる。
【００５７】
ステップＳ１５において、フロントエンド６１の送信部８１は、Set Timeslotリクエストメッセージを、３番目に接続が検出され、識別番号がＩＤ２であるセキュアエレメント６２−２に対して送信する。このリクエストメッセージには、メッセージ処理部８３によって、タイムスロット番号としてタイムスロット番号２が設定される。
【００５８】
ステップＳ４１において、識別番号がＩＤ２であるセキュアエレメント６２−２は、その受信部１０１でこのリクエストメッセージを受信すると、記憶部１０４はそのタイムスロット番号２を揮発的に記憶する。その結果、以後、セキュアエレメント６２−２は、記憶したタイムスロット番号２のタイミングで通信する。
【００５９】
ステップＳ４２において、セキュアエレメント６２−２の送信部１０２は、Set Timeslotレスポンスメッセージを、リクエストメッセージの送信元であるフロントエンド６１に送信する。このレスポンスメッセージには、メッセージ処理部１０３によって、送信者の識別番号としてＩＤ２が付加されるとともに、確認のため、設定、記憶したタイムスロット番号２がステータスとして付加されている。
【００６０】
ステップＳ１６において、フロントエンド６１の受信部８２は、このレスポンスメッセージを受信することで、タイムスロット番号がセキュアエレメント６２−２に記憶されたことを確認することができる。
【００６１】
以上のようにして、NFCデバイス５１の起動時に、フロントエンド６１は、セキュアエレメント６２のタイムスロットを設定する。
【００６２】
従来のNFCデバイスにおいては、起動時に、セキュアエレメントを制御するベースバンドコントローラが、フロントエンドを介してポーリングを送信した後に、セキュアエレメントそれぞれのタイムスロットを設定するため、起動時における通信に時間がかかっていたが、以上の処理によれば、起動時に、フロントエンド６１が、セキュアエレメント６２に、接続が検出された順番に応じたタイミングのタイムスロットを設定するだけなので、NFCデバイス５１の起動時に、より短い時間で通信を確立することが可能となる。
【００６３】
また、セキュアエレメントは、独立にRFフィールドを発生していないので、セキュアエレメントのうちのいずれか１つが、残りの他のセキュアエレメントがRFフィールドを発生しているかを予め検出することはできなかった。したがって、従来のNFCデバイスにおいては、セキュアエレメントのそれぞれが、外部NFCデバイスに対して同時に通信しようとすると、衝突が発生していた。
【００６４】
そこで、上述した処理によれば、タイムスロット番号が重ならないように割り当てられるので、衝突は発生しない。例えば、外部NFCデバイス５２からポーリングがかけられた場合の処理は、図９に示されるようになる。
【００６５】
［外部NFCデバイスからポーリングがかけられた場合の処理］
ステップＳ１０１において、外部NFCデバイス５２は、NFCデバイス５１に対してPollingリクエストメッセージを出力する。このとき通信先のシステムコードはFFFFhとされ、タイムスロット番号は設定可能な最大の番号Ｎmaxとされる。
【００６６】
ステップＳ１１１において、NFCデバイス５１のフロントエンド６１の受信部８２がこのリクエストメッセージを受信すると、送信部８１がこれをそのNFCデバイス５１内の各部に供給する。各セキュアエレメント６２−２，６２−１，６２−０の受信部１０１は、ステップＳ１２１，Ｓ１３１，Ｓ１４１において、それぞれこのリクエストをメッセージ受信する。
【００６７】
各セキュアエレメント６２は、このリクエストメッセージに対してそれぞれ設定されたタイムスロット番号のタイミングで応答する。すなわち、ステップＳ１２２において、最も早いタイムスロット番号０が設定されているセキュアエレメント６２−０の送信部１０２が、メッセージ処理部１０３によって自分自身の識別番号ＩＤ０が付加されたPollingレスポンスメッセージを返す。ステップＳ１１２において、フロントエンド６１の受信部８２がこのレスポンスメッセージを受信すると、送信部８１がそれを外部NFCデバイス５２と、各セキュアエレメント６２に供給する。但し、図９において、フロントエンド６１からのPollingレスポンスメッセージが各セキュアエレメント６２に供給される処理は図示されない。
【００６８】
ステップＳ１０２において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、セキュアエレメント６２−０の識別番号を知ることができる。なお、セキュアエレメント６２−０，６２−１，６２−２の受信部１０１は、それぞれこのレスポンスメッセージを受信するが、リクエストメッセージを出力していないので、それを無視する。
【００６９】
次に、ステップＳ１３２において、次に早いタイムスロット番号１が設定されているセキュアエレメント６２−１の送信部１０２が、メッセージ処理部１０３によって自分自身の識別番号ＩＤ１が付加されたPollingレスポンスメッセージを返す。ステップＳ１１３において、フロントエンド６１の受信部８２がこのレスポンスメッセージを受信すると、送信部８１がそれを外部NFCデバイス５２と、各セキュアエレメント６２に供給する。但し、図９において、フロントエンド６１からのPollingレスポンスメッセージが各セキュアエレメント６２に供給される処理は図示されない。
【００７０】
ステップＳ１０３において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、セキュアエレメント６２−１の識別番号を知ることができる。なお、セキュアエレメント６２−０，６２−１，６２−２の受信部１０１は、それぞれこのレスポンスメッセージを受信するが、リクエストメッセージを出力していないので、それを無視する。
【００７１】
さらに、ステップＳ１４２において、最も遅いタイムスロット番号２が設定されているセキュアエレメント６２−２の送信部１０２が、メッセージ処理部１０３によって自分自身の識別番号ＩＤ２が付加されたPollingレスポンスメッセージを返す。ステップＳ１１４において、フロントエンド６１の受信部８２がこのレスポンスメッセージを受信すると、送信部８１がそれを外部NFCデバイス５２と、各セキュアエレメント６２に供給する。但し、図９において、フロントエンド６１からのPollingレスポンスメッセージが各セキュアエレメント６２に供給される処理は図示されない。
【００７２】
ステップＳ１０４において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより外部NFCデバイス５２は、セキュアエレメント６２−２の識別番号を知ることができる。セキュアエレメント６２−０，６２−１，６２−２の受信部１０１は、それぞれこのレスポンスメッセージを受信するが、リクエストメッセージを出力していないので、それを無視する。
【００７３】
このように、タイムスロット番号が重ならないように設定されているので、各番号のタイムスロットに割り当てられている時間が短い場合でも、衝突が発生せず、迅速な通信が可能となる。
【００７４】
以上においては、外部NFCデバイス５２が、NFCデバイス５１に対してポーリングをかけた場合に、各セキュアエレメント６２が、フロントエンド６１を介してレスポンスを返す構成について説明してきた。ここで、例えば、フロントエンド６１が、予め各セキュアエレメント６２に対してポーリングをかけておき、そのレスポンスを記憶しておくことで、外部NFCデバイス５２が、NFCデバイス５１に対してポーリングをかけた場合に、フロントエンド６１が記憶していたレスポンスを返すようにすることもできる。
【００７５】
［NFC通信システムの他の構成］
図１０は、本発明を適用したNFC通信システムの他の実施の形態の構成を表している。この実施の形態において、図１のNFC通信システムを構成するものと同様の機能を備える構成については、同一名称および同一符号を付するものとし、その説明は、適宜省略するものとする。
【００７６】
すなわち、図１０のNFC通信システムにおいて、図１のNFC通信システムと異なるのは、NFCデバイス５１のフロントエンド６１に代えて、フロントエンド１６１を設けた点である。なお、フロントエンド１６１とセキュアエレメント６２−０，６２−１，６２−２とは、図１０に示されるように、コード等の有線で相互に接続（スター接続）されている。
【００７７】
ここで、図１１を参照して、フロントエンド１６１の構成例について説明する。なお、図１１のフロントエンド１６１において、図２のフロントエンド６１に設けられたものと同様の機能を備える構成については、同一名称および同一符号を付するものとし、その説明は、適宜省略するものとする。
【００７８】
すなわち、図１１のフロントエンド１６１において、図２のフロントエンド６１と異なるのは、新たに記憶部１８１を設けた点である。
【００７９】
記憶部１８１は、各セキュアエレメント６２からのレスポンスに含まれる、各アプリケーションのシステムコードと、各セキュアエレメント６２の識別番号を記憶する。
【００８０】
［起動時のタイムスロット設定処理］
次に、図１２を参照して、図１０のNFCデバイス５１の起動時におけるタイムスロット設定処理について説明する。
【００８１】
ここでは、セキュアエレメント６２−０は、NFCデバイス５１の製造時に予め組み込まれているが、セキュアエレメント６２−１，６２−２は、NFCデバイス５１の管理者により、順番に（順次）、NFCデバイス５１に装着されるものとする。すなわち、最初は、NFCデバイス５１にはセキュアエレメント６２−０のみが組み込まれている状態であり、結果的には、セキュアエレメント６２−０，６２−１，６２−２の順番で、各セキュアエレメント６２がNFCデバイス５１に装着（電気的に接続）されるものとする。
【００８２】
ステップＳ２１１において、フロントエンド１６１の送信部８１は、Pollingリクエストメッセージを、既に組み込まれているセキュアエレメント６２−０に対して送信する。このとき通信先のシステムコードはFFFFhとされ、タイムスロット番号は設定可能な最大の番号Ｎmaxとされる。
【００８３】
ステップＳ２２１において、セキュアエレメント６２−０は、その受信部１０１でこのリクエストを受信すると、ステップＳ２２２において、送信部１０２が、自分自身の識別番号ＩＤ０を付加して、ランダムなタイムスロットの番号のタイミングでPollingレスポンスメッセージを返す。
【００８４】
ステップＳ２１２において、フロントエンド１６１は、その受信部８２でこのレスポンスメッセージを受信すると、記憶部１８１は、受信部８２が受信したPollingレスポンスメッセージに付加されたセキュアエレメント６２−０の識別番号ＩＤ０を取得し、記憶する。このとき、メッセージ処理部８３は、最小の値であるタイムスロット番号０を設定し、記憶部１８１は、そのタイムスロット番号０を識別番号ＩＤ０に対応付けて記憶する。
【００８５】
ここで、NFCデバイス５１に、新たにセキュアエレメント６２−１が装着されると、ステップＳ２１３において、フロントエンド１６１の送信部８１は、Pollingリクエストメッセージを、既に組み込まれているセキュアエレメント６２−０、および、新たに装着されたセキュアエレメント６２−１に対して送信する。このとき通信先のシステムコードはFFFFhとされ、タイムスロット番号は設定可能な最大の番号Ｎmaxとされる。
【００８６】
ステップＳ２３１において、セキュアエレメント６２−１は、その受信部１０１でこのリクエストを受信すると、ステップＳ２３２において、送信部１０２が、ランダムなタイムスロットの番号のタイミングで、メッセージ処理部１０３によって自分自身の識別番号ＩＤ１が付加されたPollingレスポンスメッセージを返す。
【００８７】
ステップＳ２１４において、フロントエンド１６１の受信部８２が、このレスポンスメッセージを受信すると、記憶部１８１は、受信部８２が受信したPollingレスポンスメッセージに付加されたセキュアエレメント６２−１の識別番号ＩＤ１を取得し、記憶する。このとき、メッセージ処理部８３は、最小の値０の次に早いタイミングのタイムスロット番号１を設定し、記憶部１８１は、そのタイムスロット番号１を識別番号ＩＤ１に対応付けて記憶する。なお、このとき、セキュアエレメント６２−０からも、ランダムなタイムスロットの番号のタイミングでPollingレスポンスメッセージが返されるが、ここでは、その説明は省略する。
【００８８】
さらに、ここで、NFCデバイス５１に、新たにセキュアエレメント６２−２が装着されると、ステップＳ２１５において、フロントエンド１６１の送信部８１は、Pollingリクエストメッセージを、既に組み込まれているセキュアエレメント６２−０，６２−１、および、新たに装着されたセキュアエレメント６２−２に対して送信する。このとき通信先のシステムコードはFFFFhとされ、タイムスロット番号は設定可能な最大の番号Ｎmaxとされる。
【００８９】
ステップＳ２４１において、セキュアエレメント６２−２は、その受信部１０１でこのリクエストを受信すると、ステップＳ２４２において、送信部１０２が、ランダムなタイムスロットの番号のタイミングで、メッセージ処理部１０３によって自分自身の識別番号ＩＤ２が付加されたPollingレスポンスメッセージを返す。
【００９０】
ステップＳ２１６において、フロントエンド１６１の受信部８２が、このレスポンスメッセージを受信すると、記憶部１８１は、受信部８２が受信したPollingレスポンスメッセージに付加されたセキュアエレメント６２−２の識別番号ＩＤ２を取得し、記憶する。このとき、メッセージ処理部８３は、タイムスロット番号２を設定し、記憶部１８１は、そのタイムスロット番号２を識別番号ＩＤ２に対応付けて記憶する。なお、このとき、セキュアエレメント６２−０およびセキュアエレメント６２−１からも、ランダムなタイムスロットの番号のタイミングでPollingレスポンスメッセージが返されるが、ここでは、その説明は省略する。
【００９１】
以上のようにして、フロントエンド１６１は、セキュアエレメント６２の接続を検出した順番に、各セキュアエレメント６２の識別番号を取得するとともに、その順番に応じたタイミングのタイムスロットを設定し、これらを対応付けて記憶する。
【００９２】
以上の処理によれば、起動時（セキュアエレメント６２が追加された時）に、フロントエンド１６１が、セキュアエレメント６２の接続が検出された順番にポーリングをかけ、その順番に応じたタイミングのタイムスロットを設定するだけなので、NFCデバイス５１の起動時に、より短い時間で通信を確立することが可能となる。
【００９３】
また、以上の処理においても、タイムスロット番号が重ならないように割り当てられるので、衝突は発生しない。図１２の処理の後、例えば、外部NFCデバイス５２からポーリングがかけられた場合の処理は、図１３に示されるようになる。
【００９４】
［外部NFCデバイスからポーリングがかけられた場合の処理］
ステップＳ３０１において、外部NFCデバイス５２は、NFCデバイス５１に対してPollingリクエストメッセージを出力する。このとき通信先のシステムコードはFFFFhとされ、タイムスロット番号は設定可能な最大の番号Ｎmaxとされる。
【００９５】
ステップＳ３１１において、NFCデバイス５１のフロントエンド１６１の受信部８２がこのリクエストメッセージを受信すると、送信部８１がこのリクエストメッセージに対して、設定され記憶されたタイムスロット番号のタイミングで応答する。
【００９６】
すなわち、ステップＳ３１２において、フロントエンド１６１の送信部８１は、記憶部１８１に記憶されている、最も早いタイムスロット番号０に対応付けられている識別番号ＩＤ０が、メッセージ処理部８３により付加されたPollingレスポンスメッセージを返す。ステップＳ３０２において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、最も早いタイムスロット番号０に対応するセキュアエレメント６２−０の識別番号を知ることができる。
【００９７】
次に、ステップＳ３１３において、フロントエンド１６１の送信部８１は、記憶部１８１に記憶されている、２番目に早いタイムスロット番号１に対応付けられている識別番号ＩＤ１が、メッセージ処理部８３により付加されたPollingレスポンスメッセージを返す。ステップＳ３０３において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、２番目に早いタイムスロット番号１に対応するセキュアエレメント６２−１の識別番号を知ることができる。
【００９８】
そして、ステップＳ３１４において、フロントエンド１６１の送信部８１は、記憶部１８１に記憶されている、３番目に早いタイムスロット番号２に対応付けられている識別番号ＩＤ２が、メッセージ処理部８３により付加されたPollingレスポンスメッセージを返す。ステップＳ３０４において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、３番目に早いタイムスロット番号２に対応するセキュアエレメント６２−２の識別番号を知ることができる。
【００９９】
このように、タイムスロット番号が重ならないように設定されているので、各番号のタイムスロットに割り当てられている時間が短い場合でも、衝突が発生せず、迅速な通信が可能となる。
【０１００】
近接通信におけるPollingレスポンスメッセージのタイムスロット（送信タイミング）は、JIS（Japanese Industrial Standards） X 6319-4やISO/IEC（International Organization for Standardization/International Electrotechnical Commission）18092といった規格によって、その時間幅が1.208msec（256×64／13.56MHz）と規定されている。これは、ソフトウェアで近接通信を制御する場合には短い時間とされる。
【０１０１】
そこで、上述したように、フロントエンド１６１が、予め、セキュアエレメント６２それぞれからのPollingレスポンスメッセージ（タイムスロット番号に対応した識別番号）を記憶しておくことで、外部NFCデバイス５２からのPollingリクエストメッセージに対して、NFCデバイス５１内では、フロントエンド１６１のみが、Pollingレスポンスメッセージを返す。したがって、各セキュアエレメント６２とフロントエンド１６１との間の通信路における伝送時間を考慮する必要がないので、各セキュアエレメント６２について、送信タイミングを考慮した実装の負荷を軽減することができる。
【０１０２】
なお、上述した処理においては、フロントエンド１６１が、予め、セキュアエレメント６２それぞれからのPollingレスポンスメッセージ（タイムスロット番号に対応した識別番号）を記憶しておくようにした（図１２の処理）。そこで、フロントエンド１６１が、外部NFCデバイス５２からのPollingリクエストメッセージを各セキュアエレメント６２に送信して、所定のタイミング（図１２のステップＳ３１１とステップＳ３１２との間）までにセキュアエレメント６２それぞれからのPollingレスポンスメッセージを受信し、記憶してから、外部NFCデバイス５２に対して、Pollingレスポンスメッセージを送信するようにしてもよい。このとき、セキュアエレメント６２それぞれからフロントエンド１６１へは、ランダムなタイムスロットでPollingレスポンスメッセージが送信されるが、フロントエンド１６１と各セキュアエレメント６２とはスター接続で接続されているため、セキュアエレメント６２同士のPollingレスポンスメッセージが衝突することはない。
【０１０３】
以上においては、外部NFCデバイス５２からポーリングがかけられる場合、外部NFCデバイス５２から出力されるPollingリクエストメッセージのタイムスロット番号は、設定可能な最大の番号Ｎmaxとされていた。
【０１０４】
ここで、例えば、Pollingリクエストメッセージのタイムスロット番号が０であった場合、NFCデバイス５１としては、１個のPollingレスポンスメッセージ（最も早いタイムスロット番号０に対応するPollingレスポンスメッセージ）しか返すことができない。したがって、外部NFCデバイス５２は、そのレスポンスに対応するセキュアエレメント６２（例えば、タイムスロット番号０に対応するセキュアエレメント６２−０）の識別番号しか知ることができない。
【０１０５】
すなわち、外部NFCデバイス５２から送信されてくるPollingリクエストメッセージのタイムスロット番号が、NFCデバイス５１に収容されているセキュアエレメント６２の数よりも少ない場合、外部NFCデバイス５２は、NFCデバイス５１に収容されている全てのセキュアエレメント６２を検出することができない。
【０１０６】
そこで、外部NFCデバイス５２から送信されてくるPollingリクエストメッセージのタイムスロット番号が、NFCデバイス５１に収容されているセキュアエレメント６２の数より少ない場合でも、後述するように、NFCデバイス５１が、各セキュアエレメント６２に割り当てられているタイムスロットを順次変更することで、外部NFCデバイス５２が、NFCデバイス５１に収容されている全てのセキュアエレメント６２を検出することができるようになる。
【０１０７】
［外部NFCデバイスからポーリングがかけられた場合にタイムスロットを順次変更する処理］
ここで、図１４を参照して、外部NFCデバイス５２からポーリングがかけられた場合に、NFCデバイス５１が、各セキュアエレメント６２に割り当てられているタイムスロットを順次変更する処理について説明する。
【０１０８】
ステップＳ３２１において、外部NFCデバイス５２は、NFCデバイス５１に対してPollingリクエストメッセージを出力する。このとき通信先のシステムコードはFFFFhとされ、タイムスロット番号は３とされる。
【０１０９】
ステップＳ３５１において、NFCデバイス５１のフロントエンド１６１の受信部８２がこのリクエストメッセージを受信すると、送信部８１がこのリクエストメッセージに対して、設定され記憶されたタイムスロット番号のタイミングで応答する。
【０１１０】
図１４のステップＳ３２２乃至Ｓ３２４，Ｓ３５２乃至Ｓ３５４の処理は、図１３のステップＳ３０２乃至Ｓ３０４，Ｓ３１２乃至Ｓ３１４の処理と同一であるので、その説明は省略する。
【０１１１】
ステップＳ３２５において、外部NFCデバイス５２は、NFCデバイス５１に対してPollingリクエストメッセージを出力する。このとき通信先のシステムコードはFFFFhとされ、タイムスロット番号は３とされる。
【０１１２】
ステップＳ３５５において、NFCデバイス５１のフロントエンド１６１の受信部８２がこのリクエストメッセージを再び受信すると、メッセージ処理部８３がタイムスロット番号と識別番号との対応付け（組み合わせ）を変更し、送信部８１がこのリクエストメッセージに対して、識別番号との対応付けが変更されたタイムスロット番号のタイミングで応答する。
【０１１３】
すなわち、ステップＳ３５６において、フロントエンド１６１のメッセージ処理部８３は、記憶部１８１に記憶されているタイムスロット番号と識別番号との対応付けを変更し、改めて記憶部１８１に記憶させる。より具体的には、メッセージ処理部８３は、最も早いタイムスロット番号０に対応付けられている識別番号ＩＤ０を、識別番号ＩＤ１にし、２番目に早いタイムスロット番号１に対応付けられている識別番号ＩＤ１を、識別番号ＩＤ２にし、３番目に早いタイムスロット番号２に対応付けられている識別番号ＩＤ２を、識別番号ＩＤ０にする。
【０１１４】
ステップＳ３５７において、フロントエンド１６１の送信部８１は、メッセージ処理部８３によって、最も早いタイムスロット番号０に対応付けが変更された識別番号ＩＤ１が付加されたPollingレスポンスメッセージを返す。ステップＳ３２６において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、最も早いタイムスロット番号０に対応するセキュアエレメント６２−１の識別番号を知ることができる。
【０１１５】
次に、ステップＳ３５８において、フロントエンド１６１の送信部８１は、メッセージ処理部８３によって、２番目に早いタイムスロット番号１に対応付けが変更された識別番号ＩＤ１が付加されたPollingレスポンスメッセージを返す。ステップＳ３２７において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、２番目に早いタイムスロット番号１に対応するセキュアエレメント６２−２の識別番号を知ることができる。
【０１１６】
そして、ステップＳ３５９において、フロントエンド１６１の送信部８１は、メッセージ処理部８３によって、３番目に早いタイムスロット番号２に対応付けが変更された識別番号ＩＤ０が付加されたPollingレスポンスメッセージを返す。ステップＳ３２８において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、３番目に早いタイムスロット番号２に対応するセキュアエレメント６２−０の識別番号を知ることができる。
【０１１７】
ステップＳ３２９において、外部NFCデバイス５２は、NFCデバイス５１に対してPollingリクエストメッセージを出力する。このとき通信先のシステムコードはFFFFhとされ、タイムスロット番号は３とされる。
【０１１８】
ステップＳ３６０において、NFCデバイス５１のフロントエンド１６１の受信部８２がこのリクエストメッセージを再び受信すると、メッセージ処理部８３がタイムスロット番号と識別番号との対応付け（組み合わせ）を変更し、送信部８１がこのリクエストメッセージに対して、識別番号との対応付けが変更されたタイムスロット番号のタイミングで応答する。
【０１１９】
すなわち、ステップＳ３６１において、フロントエンド１６１のメッセージ処理部８３は、記憶部１８１に記憶されているタイムスロット番号と識別番号との対応付けを変更し、改めて記憶部１８１に記憶させる。より具体的には、メッセージ処理部８３は、最も早いタイムスロット番号０に対応付けられている識別番号ＩＤ１を、識別番号ＩＤ２にし、２番目に早いタイムスロット番号１に対応付けられている識別番号ＩＤ２を、識別番号ＩＤ０にし、３番目に早いタイムスロット番号２に対応付けられている識別番号ＩＤ０を、識別番号ＩＤ１にする。
【０１２０】
ステップＳ３６２において、フロントエンド１６１の送信部８１は、メッセージ処理部８３によって、最も早いタイムスロット番号０に対応付けが変更された識別番号ＩＤ２が付加されたPollingレスポンスメッセージを返す。ステップＳ３３０において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、最も早いタイムスロット番号０に対応するセキュアエレメント６２−２の識別番号を知ることができる。
【０１２１】
次に、ステップＳ３６３において、フロントエンド１６１の送信部８１は、メッセージ処理部８３によって、２番目に早いタイムスロット番号１に対応付けが変更された識別番号ＩＤ０が付加されたPollingレスポンスメッセージを返す。ステップＳ３３１において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、２番目に早いタイムスロット番号１に対応するセキュアエレメント６２−０の識別番号を知ることができる。
【０１２２】
そして、ステップＳ３６４において、フロントエンド１６１の送信部８１は、メッセージ処理部８３によって、３番目に早いタイムスロット番号２に対応付けが変更された識別番号ＩＤ１が付加されたPollingレスポンスメッセージを返す。ステップＳ３３２において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、３番目に早いタイムスロット番号２に対応するセキュアエレメント６２−１の識別番号を知ることができる。
【０１２３】
さらに、ステップＳ３３２の後に、外部NFCデバイス５２から、NFCデバイス５１に対してPollingリクエストメッセージが出力された場合には、フロントエンド１６１は、ステップＳ３５２乃至Ｓ３５４と同一のタイムスロット番号で、各セキュアエレメントに対応するPollingレスポンスメッセージを送信する。すなわち、Pollingリクエストメッセージが出力される毎に、図１４の処理が繰り返される。
【０１２４】
以上のように、フロントエンド１６１は、外部NFCデバイス５２からPollingリクエストメッセージを受信する毎に、タイムスロット番号と識別番号との対応付けを繰り返し変更（回転）させる。なお、図１４の処理においては、外部NFCデバイス５２からPollingリクエストメッセージのタイムスロットに記載されているタイムスロット番号は３であったので、NFCデバイス５１は、最大４個のPollingレスポンスメッセージを返すことができる。したがって、外部NFCデバイス５２は、NFCデバイス５１に収容されている全てのセキュアエレメント６２−０，６２−１，６２−２を検出することができる。
【０１２５】
以上においては、外部NFCデバイス５２からPollingリクエストメッセージのタイムスロットに記載されているタイムスロット番号を３としたが、以下においては、Pollingリクエストメッセージのタイムスロットに記載されているタイムスロット番号を０とした場合（外部NFCデバイス５２が、１個のPollingレスポンスメッセージしか要求していない場合）の処理について、図１５を参照して説明する。
【０１２６】
ステップＳ３８１において、外部NFCデバイス５２は、NFCデバイス５１に対してPollingリクエストメッセージを出力する。このとき通信先のシステムコードはFFFFhとされ、タイムスロット番号は０とされる。
【０１２７】
ステップＳ３９１において、NFCデバイス５１のフロントエンド１６１の受信部８２がこのリクエストメッセージを受信すると、送信部８１がこのリクエストメッセージに対して、設定され記憶されたタイムスロット番号のタイミングで応答する。
【０１２８】
すなわち、ステップＳ３９２において、フロントエンド１６１の送信部８１は、記憶部１８１に記憶されている、最も早いタイムスロット番号０に対応付けられている識別番号ＩＤ０が、メッセージ処理部８３により付加されたPollingレスポンスメッセージを返す。ステップＳ３８２において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、最も早いタイムスロット番号０に対応するセキュアエレメント６２−０の識別番号を知ることができる。
【０１２９】
ただし、外部NFCデバイス５２からのPollingリクエストメッセージのタイムスロットは０であるので、フロントエンド１６１は、これ以上Pollingレスポンスメッセージを返さない。すなわち、このとき、２番目に早いタイムスロット番号１に対応付けられている識別番号ＩＤ１が付加されたPollingレスポンスメッセージ、および、３番目に早いタイムスロット番号２に対応付けられている識別番号ＩＤ２が付加されたPollingレスポンスメッセージは、外部NFCデバイス５２に送信されない。
【０１３０】
ステップＳ３８３において、外部NFCデバイス５２は、NFCデバイス５１に対してPollingリクエストメッセージを出力する。このとき通信先のシステムコードはFFFFhとされ、タイムスロット番号は０とされる。
【０１３１】
ステップＳ３９３において、NFCデバイス５１のフロントエンド１６１の受信部８２がこのリクエストメッセージを再び受信すると、メッセージ処理部８３がタイムスロット番号と識別番号との対応付け（組み合わせ）を変更し、送信部８１がこのリクエストメッセージに対して、識別番号との対応付けが変更されたタイムスロット番号のタイミングで応答する。
【０１３２】
すなわち、ステップＳ３９４において、フロントエンド１６１のメッセージ処理部８３は、記憶部１８１に記憶されているタイムスロット番号と、タイムスロット番号に対応付けられている識別番号との対応付けを変更し、改めて記憶部１８１に記憶させる。より具体的には、メッセージ処理部８３は、最も早いタイムスロット番号０に対応付けられている識別番号ＩＤ０を、識別番号ＩＤ１にし、２番目に早いタイムスロット番号１に対応付けられている識別番号ＩＤ１を、識別番号ＩＤ２にし、３番目に早いタイムスロット番号２に対応付けられている識別番号ＩＤ２を、識別番号ＩＤ０にする。
【０１３３】
ステップＳ３９５において、フロントエンド１６１の送信部８１は、メッセージ処理部８３によって、最も早いタイムスロット番号０に対応付けが変更された識別番号ＩＤ１が付加されたPollingレスポンスメッセージを返す。ステップＳ３８４において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、最も早いタイムスロット番号０に対応するセキュアエレメント６２−１の識別番号を知ることができる。
【０１３４】
ただし、外部NFCデバイス５２からのPollingリクエストメッセージのタイムスロットは０であるので、フロントエンド１６１は、これ以上Pollingレスポンスメッセージを返さない。すなわち、このとき、２番目に早いタイムスロット番号１に対応付けられている識別番号ＩＤ２が付加されたPollingレスポンスメッセージ、および、３番目に早いタイムスロット番号２に対応付けられている識別番号ＩＤ０が付加されたPollingレスポンスメッセージは、外部NFCデバイス５２に送信されない。
【０１３５】
ステップＳ３８５において、外部NFCデバイス５２は、NFCデバイス５１に対してPollingリクエストメッセージを出力する。このとき通信先のシステムコードはFFFFhとされ、タイムスロット番号は０とされる。
【０１３６】
ステップＳ３９６において、NFCデバイス５１のフロントエンド１６１の受信部８２がこのリクエストメッセージを再び受信すると、メッセージ処理部８３がタイムスロット番号と識別番号との対応付け（組み合わせ）を変更し、送信部８１がこのリクエストメッセージに対して、識別番号との対応付けが変更されたタイムスロット番号のタイミングで応答する。
【０１３７】
すなわち、ステップＳ３９７において、フロントエンド１６１のメッセージ処理部８３は、記憶部１８１に記憶されているタイムスロット番号と、タイムスロット番号に対応付けられている識別番号との対応付けを変更し、改めて記憶部１８１に記憶させる。より具体的には、メッセージ処理部８３は、最も早いタイムスロット番号０に対応付けられている識別番号ＩＤ１を、識別番号ＩＤ２にし、２番目に早いタイムスロット番号１に対応付けられている識別番号ＩＤ２を、識別番号ＩＤ０にし、３番目に早いタイムスロット番号２に対応付けられている識別番号ＩＤ０を、識別番号ＩＤ１にする。
【０１３８】
ステップＳ３９８において、フロントエンド１６１の送信部８１は、メッセージ処理部８３によって、最も早いタイムスロット番号０に対応付けが変更された識別番号ＩＤ２が付加されたPollingレスポンスメッセージを返す。ステップＳ３８６において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、最も早いタイムスロット番号０に対応するセキュアエレメント６２−２の識別番号を知ることができる。
【０１３９】
ただし、外部NFCデバイス５２からのPollingリクエストメッセージのタイムスロットは０であるので、フロントエンド１６１は、これ以上Pollingレスポンスメッセージを返さない。すなわち、このとき、２番目に早いタイムスロット番号１に対応付けられている識別番号ＩＤ０が付加されたPollingレスポンスメッセージ、および、３番目に早いタイムスロット番号２に対応付けられている識別番号ＩＤ１が付加されたPollingレスポンスメッセージは、外部NFCデバイス５２に送信されない。
【０１４０】
以上のように、外部NFCデバイス５２からPollingリクエストメッセージのタイムスロットに記載されているタイムスロット番号が０であっても、フロントエンド１６１は、外部NFCデバイス５２からPollingリクエストメッセージを受信する毎に、タイムスロット番号と識別番号との対応付けを繰り返し変更（回転）させるので、外部NFCデバイス５２は、NFCデバイス５１に収容されている全てのセキュアエレメント６２−０，６２−１，６２−２を検出することができる。
【０１４１】
このように、外部NFCデバイス５２から送信されてくるPollingリクエストメッセージのタイムスロット番号が、NFCデバイス５１に収容されているセキュアエレメント６２の数よりも少ない場合でも、NFCデバイス５１が、各セキュアエレメント６２に割り当てられているタイムスロットを順次変更することで、外部NFCデバイス５２が、NFCデバイス５１に収容されている全てのセキュアエレメント６２を検出することが可能となる。
【０１４２】
以上においては、フロントエンド１６１が、セキュアエレメント６２それぞれの識別番号を記憶し、タイムスロットを設定（および変更）するようにしたが、一部のセキュアエレメント６２のみの識別番号を記憶し、そのタイムスロットを設定するようにしてもよい。
【０１４３】
［起動時のタイムスロット設定処理］
ここで、図１６を参照して、一部のセキュアエレメント６２のみの識別番号を記憶し、タイムスロットを設定するようにしたNFCデバイス５１の、起動時におけるタイムスロット設定処理について説明する。
【０１４４】
ここでは、セキュアエレメント６２−０は、NFCデバイス５１の製造時に予め組み込まれているが、セキュアエレメント６２−１，６２−２は、NFCデバイス５１の管理者により、順番に（順次）、NFCデバイス５１に装着されるものとする。
【０１４５】
例えば、NFCデバイス５１の製造時、ステップＳ４２１において、セキュアエレメント６２−０の送信部１０２は、自分自身の識別番号ＩＤ０を、フロントエンド１６１に通知する。
【０１４６】
ステップＳ４１１において、フロントエンド１６１は、その受信部８２でセキュアエレメント６２−０の識別番号ＩＤ０を受信すると、記憶部１８１は、受信部８２が受信したセキュアエレメント６２−０の識別番号ＩＤ０を記憶する。このとき、メッセージ処理部８３は、最小の値であるタイムスロット番号０を設定し、記憶部１８１は、そのタイムスロット番号０を識別番号ＩＤ０に対応付けて記憶する。
【０１４７】
以下、セキュアエレメント６２−１，６２−２が、NFCデバイス５１の管理者により、順番に、NFCデバイス５１に装着されたものとして説明する。すなわち、セキュアエレメント６２−１，６２−２は、その順番でNFCデバイス５１に装着（電気的に接続）され、フロントエンド１６１は、セキュアエレメント６２−１，６２−２それぞれの識別番号とともに、セキュアエレメント６２−１，６２−２それぞれの接続が検出された順番を知っているものとする。
【０１４８】
ステップＳ４１２において、フロントエンド１６１の送信部８１は、Set Timeslotリクエストメッセージを、セキュアエレメント６２−０を除いて最初に接続が検出され、識別番号がＩＤ１であるセキュアエレメント６２−１に対して送信する。このリクエストメッセージには、メッセージ処理部８３によって、タイムスロット番号として、最小の値０の次に早いタイミングのタイムスロット番号１が設定される。
【０１４９】
ステップＳ４３１において、識別番号がＩＤ１であるセキュアエレメント６２−１は、その受信部１０１でこのリクエストメッセージを受信すると、記憶部１０４はそのタイムスロット番号１を揮発的に記憶する。その結果、以後、セキュアエレメント６２−１は、記憶したタイムスロット番号１のタイミングで通信する。
【０１５０】
ステップＳ４３２において、セキュアエレメント６２−１の送信部１０２は、Set Timeslotレスポンスメッセージを、リクエストの送信元であるフロントエンド１６１に送信する。このレスポンスメッセージには、メッセージ処理部１０３によって、送信者の識別番号としてＩＤ１が付加されるとともに、確認のため、設定、記憶したタイムスロット番号１がステータスとして付加されている。
【０１５１】
ステップＳ４１３において、フロントエンド１６１の受信部８２は、このレスポンスメッセージを受信することで、タイムスロット番号がセキュアエレメント６２−１に記憶されたことを確認することができる。
【０１５２】
ステップＳ４１４において、フロントエンド１６１の送信部８１は、Set Timeslotリクエストメッセージを、セキュアエレメント６２−０を除いて２番目に接続が検出され、識別番号がＩＤ２であるセキュアエレメント６２−２に対して送信する。このリクエストメッセージには、メッセージ処理部８３によって、タイムスロット番号としてタイムスロット番号２が設定される。
【０１５３】
ステップＳ４４１において、識別番号がＩＤ２であるセキュアエレメント６２−２は、その受信部１０１でこのリクエストメッセージを受信すると、記憶部１０４はそのタイムスロット番号０を揮発的に記憶する。その結果、以後、セキュアエレメント６２−２は、記憶したタイムスロット番号２のタイミングで通信する。
【０１５４】
ステップＳ４４２において、セキュアエレメント６２−２の送信部１０２は、Set Timeslotレスポンスメッセージを、リクエストの送信元であるフロントエンド１６１に送信する。このレスポンスメッセージには、メッセージ処理部１０３によって、送信者の識別番号としてＩＤ２が付加されるとともに、確認のため、設定、記憶したタイムスロット番号２がステータスとして付加されている。
【０１５５】
ステップＳ４１５において、フロントエンド１６１の受信部８２は、このレスポンスメッセージを受信することで、タイムスロット番号がセキュアエレメント６２−２に記憶されたことを確認することができる。
【０１５６】
以上のようにして、NFCデバイス５１の起動時に、フロントエンド６１は、セキュアエレメント６２のタイムスロットを設定する。
【０１５７】
以上の処理によれば、起動時に、フロントエンド１６１が、セキュアエレメント６２に、接続が検出された順番に応じたタイミングのタイムスロットを設定するだけなので、NFCデバイス５１の起動時に、より短い時間で通信を確立することが可能となる。
【０１５８】
また、以上の処理においても、タイムスロット番号が重ならないように割り当てられるので、衝突は発生しない。図１６の処理の後、例えば、外部NFCデバイス５２からポーリングがかけられた場合の処理は、図１７に示されるようになる。
【０１５９】
［外部NFCデバイスからポーリングがかけられた場合の処理］
ステップＳ５０１において、外部NFCデバイス５２は、NFCデバイス５１に対してPollingリクエストメッセージを出力する。このとき通信先のシステムコードはFFFFhとされ、タイムスロット番号は設定可能な最大の番号Ｎmaxとされる。
【０１６０】
ステップＳ５１１において、NFCデバイス５１のフロントエンド１６１の受信部８２は、このリクエストメッセージを受信すると、メッセージ処理部８３が通信先のシステムコードをＳＣ１およびＳＣ２に変更し、送信部８１がこれをセキュアエレメント６２−１，６２−２に供給する。セキュアエレメント６２−１，６２−２の受信部１０１は、ステップＳ５３１，Ｓ５４１において、それぞれこのリクエストメッセージを受信する。
【０１６１】
フロントエンド１６１、および、セキュアエレメント６２−１，６２−２は、このリクエストメッセージを受信すると、このリクエストメッセージに対してそれぞれ設定されたタイムスロット番号のタイミングで応答する。
【０１６２】
すなわち、ステップＳ５１２において、フロントエンド１６１の送信部８１は、記憶部１８１に記憶されている、最も早いタイムスロット番号０に対応付けられている識別番号ＩＤ０が、メッセージ処理部８３により付加されたPollingレスポンスメッセージを返す。ステップＳ５０２において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、最も早いタイムスロット番号０に対応するセキュアエレメント６２−０の識別番号を知ることができる。
【０１６３】
次に、ステップＳ５３２において、次に早いタイムスロット番号１が設定されているセキュアエレメント６２−１の送信部１０２が、メッセージ処理部１０３によって自分自身の識別番号ＩＤ１が付加されたPollingレスポンスメッセージを返す。ステップＳ５１３において、フロントエンド１６１の受信部８２がこのレスポンスメッセージを受信すると、送信部８１がそれを外部NFCデバイス５２と、各セキュアエレメント６２に供給する。但し、図１７において、フロントエンド１６１からのPollingレスポンスメッセージが各セキュアエレメント６２に供給される処理は図示されない。
【０１６４】
ステップＳ５０３において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、セキュアエレメント６２−１の識別番号を知ることができる。なお、セキュアエレメント６２−０，６２−１，６２−２は、それぞれこのレスポンスメッセージを受信するが、リクエストメッセージを出力していないので、それを無視する。
【０１６５】
さらに、ステップＳ５４２において、最も遅いタイムスロット番号２が設定されているセキュアエレメント６２−２の送信部１０２が、メッセージ処理部１０３によって自分自身の識別番号ＩＤ２が付加されたPollingレスポンスメッセージを返す。ステップＳ５１４において、フロントエンド１６１の受信部８２がこのレスポンスメッセージを受信すると、送信部８１がそれを外部NFCデバイス５２と、各セキュアエレメント６２に供給する。但し、図１７において、フロントエンド１６１からのPollingレスポンスメッセージが各セキュアエレメント６２に供給される処理は図示されない。
【０１６６】
ステップＳ５０４において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより外部NFCデバイス５２は、セキュアエレメント６２−２の識別番号を知ることができる。なお、セキュアエレメント６２−０，６２−１，６２−２は、それぞれこのレスポンスメッセージを受信するが、リクエストメッセージを出力していないので、それを無視する。
【０１６７】
このように、タイムスロット番号が重ならないように設定されているので、各番号のタイムスロットに割り当てられている時間が短い場合でも、衝突が発生せず、迅速な通信が可能となる。
【０１６８】
以上においては、セキュアエレメント６２−０のタイムスロットが、フロントエンド１６１によって設定されるようにしたが、NFCデバイス５１の製造時等、予め指定されていてもよい。
【０１６９】
［起動時のタイムスロット設定処理］
ここで、図１８を参照して、一部のセキュアエレメント６２のタイムスロットが予め指定されているNFCデバイス５１の、起動時におけるタイムスロット設定処理について説明する。
【０１７０】
ここでは、セキュアエレメント６２−０は、NFCデバイス５１の製造時に予め組み込まれているが、セキュアエレメント６２−１，６２−２は、NFCデバイス５１の管理者により、順番に（順次）、NFCデバイス５１に装着されるものとする。また、セキュアエレメント６２−０がNFCデバイス５１の製造時に組み込まれる際に、その記憶部１０４には、タイムスロット番号２が設定（記憶）されているものとする。
【０１７１】
例えば、NFCデバイス５１の製造時、ステップＳ６２１において、セキュアエレメント６２−０の送信部１０２は、自分自身の識別番号ＩＤ０とともに、タイムスロット番号２を、フロントエンド１６１に通知する。
【０１７２】
ステップＳ６１１において、フロントエンド１６１は、その受信部８２でセキュアエレメント６２−０の識別番号ＩＤ０およびタイムスロット番号２を受信すると、記憶部１８１は、受信部８２が受信した識別番号ＩＤ０およびタイムスロット番号２を記憶する。
【０１７３】
以下、セキュアエレメント６２−１，６２−２が、NFCデバイス５１の管理者により、順番に、NFCデバイス５１に装着されたものとして説明する。すなわち、セキュアエレメント６２−１，６２−２は、その順番でNFCデバイス５１に装着（電気的に接続）され、フロントエンド１６１は、セキュアエレメント６２−１，６２−２それぞれの識別番号とともに、セキュアエレメント６２−１，６２−２それぞれの接続が検出された順番を知っているものとする。
【０１７４】
ステップＳ６１２において、フロントエンド１６１の送信部８１は、Set Timeslotリクエストメッセージを、セキュアエレメント６２−０を除いて最初に接続が検出され、識別番号がＩＤ１であるセキュアエレメント６２−１に対して送信する。このリクエストメッセージには、メッセージ処理部８３によって、タイムスロット番号として、最小の値０が設定される。
【０１７５】
ステップＳ６３１において、識別番号がＩＤ１であるセキュアエレメント６２−１は、その受信部１０１でこのリクエストメッセージを受信すると、記憶部１０４はそのタイムスロット番号０を揮発的に記憶する。その結果、以後、セキュアエレメント６２−１は、記憶したタイムスロット番号０のタイミングで通信する。このタイムスロット番号０は最も早いタイミングの値なので、セキュアエレメント６２−１は、他のセキュアエレメント６２より時間的に優先して通信することができる。
【０１７６】
ステップＳ６３２において、セキュアエレメント６２−１の送信部１０２は、Set Timeslotレスポンスメッセージを、リクエストメッセージの送信元であるフロントエンド１６１に送信する。このレスポンスメッセージには、メッセージ処理部１０３によって、送信者の識別番号としてＩＤ１が付加されるとともに、確認のため、設定、記憶したタイムスロット番号０がステータスとして付加されている。
【０１７７】
ステップＳ６１３において、フロントエンド１６１の受信部８２は、このレスポンスメッセージを受信することで、タイムスロット番号がセキュアエレメント６２−１に記憶されたことを確認することができる。
【０１７８】
ステップＳ６１４において、フロントエンド１６１の送信部８１は、Set Timeslotリクエストメッセージを、セキュアエレメント６２−０を除いて２番目に接続が検出され、識別番号がＩＤ２であるセキュアエレメント６２−２に対して送信する。このリクエストメッセージには、メッセージ処理部８３によって、タイムスロット番号として、最小の値０の次に早いタイミングのタイムスロット番号１が設定される。
【０１７９】
ステップＳ６４１において、識別番号がＩＤ２であるセキュアエレメント６２−２は、その受信部１０１でこのリクエストを受信すると、記憶部１０４はそのタイムスロット番号１を揮発的に記憶する。その結果、以後、セキュアエレメント６２−２は、記憶したタイムスロット番号１のタイミングで通信する。
【０１８０】
ステップＳ６４２において、セキュアエレメント６２−２の送信部１０２は、Set Timeslotレスポンスメッセージを、リクエストの送信元であるフロントエンド１６１に送信する。このレスポンスメッセージには、メッセージ処理部１０３によって、送信者の識別番号としてＩＤ２が付加されるとともに、確認のため、設定、記憶したタイムスロット番号１がステータスとして付加されている。
【０１８１】
ステップＳ６１５において、フロントエンド１６１の受信部８２は、このレスポンスメッセージを受信することで、タイムスロット番号がセキュアエレメント６２−２に記憶されたことを確認することができる。
【０１８２】
以上のようにして、NFCデバイス５１の起動時に、フロントエンド１６１は、セキュアエレメント６２のタイムスロットを設定する。
【０１８３】
以上の処理によれば、起動時に、フロントエンド１６１が、セキュアエレメント６２に、接続が検出された順番に応じたタイミングのタイムスロットを設定するだけなので、NFCデバイス５１の起動時に、より短い時間で通信を確立することが可能となる。
【０１８４】
また、以上の処理においても、タイムスロット番号が重ならないように割り当てられるので、衝突は発生しない。図１８の処理の後、例えば、外部NFCデバイス５２からポーリングがかけられた場合の処理は、図１９に示されるようになる。
【０１８５】
［外部NFCデバイスからポーリングがかけられた場合の処理］
ステップＳ７０１において、外部NFCデバイス５２は、NFCデバイス５１に対してPollingリクエストメッセージを出力する。このとき通信先のシステムコードはFFFFhとされ、タイムスロット番号は設定可能な最大の番号Ｎmaxとされる。
【０１８６】
ステップＳ７１１において、NFCデバイス５１のフロントエンド１６１の受信部８２は、このリクエストメッセージを受信すると、メッセージ処理部８３が通信先のシステムコードをＳＣ１およびＳＣ２に変更し、送信部８１がこれをセキュアエレメント６２−１，６２−２に供給する。セキュアエレメント６２−１，６２−２の受信部１０１は、ステップＳ７３１，Ｓ７４１において、それぞれこのリクエストメッセージを受信する。
【０１８７】
フロントエンド１６１、および、セキュアエレメント６２−１，６２−２は、このリクエストメッセージを受信すると、このリクエストメッセージに対してそれぞれ設定されたタイムスロット番号のタイミングで応答する。
【０１８８】
すなわち、ステップＳ７３２において、最も早いタイムスロット番号０が設定されているセキュアエレメント６２−１の送信部１０２が、メッセージ処理部１０３によって自分自身の識別番号ＩＤ１が付加されたPollingレスポンスメッセージを返す。ステップＳ７１２において、フロントエンド１６１の受信部８２がこのレスポンスメッセージを受信すると、送信部８１がそれを外部NFCデバイス５２と、各セキュアエレメント６２に供給する。但し、図１９において、フロントエンド１６１からのPollingレスポンスメッセージが各セキュアエレメント６２に供給される処理は図示されない。
【０１８９】
ステップＳ７０２において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、セキュアエレメント６２−１の識別番号を知ることができる。なお、セキュアエレメント６２−０，６２−１，６２−２は、それぞれこのレスポンスメッセージを受信するが、リクエストメッセージを出力していないので、それを無視する。
【０１９０】
次に、ステップＳ７４２において、次に早いタイムスロット番号１が設定されているセキュアエレメント６２−２の送信部１０２が、メッセージ処理部１０３によって自分自身の識別番号ＩＤ２が付加されたPollingレスポンスメッセージを返す。ステップＳ７１３において、フロントエンド１６１の受信部８２がこのレスポンスメッセージを受信すると、送信部８１がそれを外部NFCデバイス５２と、各セキュアエレメント６２に供給する。但し、図１９において、フロントエンド１６１からのPollingレスポンスメッセージが各セキュアエレメント６２に供給される処理は図示されない。
【０１９１】
ステップＳ７０３において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより外部NFCデバイス５２は、セキュアエレメント６２−２の識別番号を知ることができる。なお、セキュアエレメント６２−０，６２−１，６２−２は、それぞれこのレスポンスメッセージを受信するが、リクエストメッセージを出力していないので、それを無視する。
【０１９２】
さらに、ステップＳ７１４において、フロントエンド１６１の送信部８１は、最も遅いタイムスロット番号２とともに記憶部１８１に記憶されている識別番号ＩＤ０を付加してPollingレスポンスメッセージを返す。ステップＳ７０４において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。これにより、外部NFCデバイス５２は、最も遅いタイムスロット番号２に対応するセキュアエレメント６２−０の識別番号を知ることができる。
【０１９３】
このように、タイムスロット番号が重ならないように設定されているので、各番号のタイムスロットに割り当てられている時間が短い場合でも、衝突が発生せず、迅速な通信が可能となる。
【０１９４】
次に、以上の処理により通信が確立した後に、外部NFCデバイス５２がNFCデバイス５１からデータを読み出す場合の処理について、図２０を参照して説明する。
【０１９５】
［データの読み出し処理］
ステップＳ８０１において、外部NFCデバイス５２は、通信相手のうちの１つであるセキュアエレメント６２−１の識別番号ＩＤ１を指定して、Readリクエストメッセージを送信する。ステップＳ８１１において、フロントエンド１６１の受信部８２がこのリクエストメッセージを受信すると、送信部８１がそれをNFCデバイス５１内の各部に供給する。セキュアエレメント６２−０，６２−２は、ステップＳ８２１，Ｓ８４１において、それぞれこのリクエストメッセージを受信するが、識別番号が一致しないので、それを無視する。すなわち、ステップＳ８３１において、セキュアエレメント６２−１の受信部１０１はこのリクエストメッセージを受信する。
【０１９６】
ステップＳ８３２において、セキュアエレメント６２−１の送信部１０２は、メッセージ処理部１０３によって自分自身の識別番号ＩＤ１が付加されたReadレスポンスメッセージを返す。ステップＳ８１２において、フロントエンド１６１の受信部８２がこのレスポンスメッセージを受信すると、送信部８１がそれを各セキュアエレメント６２、および外部NFCデバイス５２に供給する。但し、図２０において、フロントエンド１６１からのReadレスポンスメッセージが各セキュアエレメント６２に供給される処理は図示されない。
【０１９７】
ステップＳ８０２において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。従って、以後、外部NFCデバイス５２は、セキュアエレメント６２−１からデータを読み出すことができる。なお、セキュアエレメント６２−０，６２−１，６２−２は、それぞれこのレスポンスメッセージを受信するが、リクエストメッセージを出力していないので、それを無視する。
【０１９８】
次に、通信が確立した後に、外部NFCデバイス５２がNFCデバイス５１へデータを書き込む場合の処理について、図２１を参照して説明する。
【０１９９】
［データの書き込み処理］
ステップＳ８５１において、外部NFCデバイス５２は、通信相手のうちの１つであるセキュアエレメント６２−２の識別番号ＩＤ２を指定して、Writeリクエストメッセージを送信する。ステップＳ８６１において、フロントエンド１６１の受信部８２がこのリクエストメッセージを受信すると、送信部８１がそれをNFCデバイス５１内の各部に供給する。セキュアエレメント６２−０，６２−１は、ステップＳ８７１，Ｓ８８１において、それぞれこのリクエストメッセージを受信するが、識別番号が一致しないので、それを無視する。ステップＳ８９１において、セキュアエレメント６２−２の受信部１０１はこのリクエストメッセージを受信する。
【０２００】
ステップＳ８９２において、セキュアエレメント６２−２の送信部１０２は、メッセージ処理部１０３によって自分自身の識別番号ＩＤ２が付加されたWriteレスポンスメッセージを返す。ステップＳ８６２において、フロントエンド１６１の受信部８２がこのレスポンスメッセージを受信すると、送信部８１がそれを各セキュアエレメント６２、および外部NFCデバイス５２に供給する。但し、図２１において、フロントエンド１６１からのWriteレスポンスメッセージが各セキュアエレメント６２に供給される処理は図示されない。
【０２０１】
ステップＳ８５２において、外部NFCデバイス５２は、このレスポンスメッセージを受信する。従って、以後、外部NFCデバイス５２は、セキュアエレメント６２−２へデータを書き込むことができる。なお、セキュアエレメント６２−０，６２−１，６２−２は、それぞれこのレスポンスメッセージを受信するが、リクエストメッセージを出力していないので、それを無視する。
【０２０２】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０２０３】
なお、本明細書において、プログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０２０４】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０２０５】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【符号の説明】
【０２０６】
５１  NFCデバイス，  ５２  外部NFCデバイス，  ６１  フロントエンド，  ６２−０乃至６２−２  セキュアエレメント，  ８１  送信部，  ８２  受信部，  ８３  メッセージ処理部，  １０１  受信部，  １０２  送信部，  １０３  メッセージ処理部，  １０４  記憶部，  １６１  フロントエンド，  １８１  記憶部
【図１】
2011049778.tif 000003
【図２】
2011049778.tif 000004
【図３】
2011049778.tif 000005
【図４】
2011049778.tif 000006
【図５】
2011049778.tif 000007
【図６】
2011049778.tif 000008
【図７】
2011049778.tif 000009
【図８】
2011049778.tif 000010
【図９】
2011049778.tif 000011
【図１０】
2011049778.tif 000012
【図１１】
2011049778.tif 000013
【図１２】
2011049778.tif 000014
【図１３】
2011049778.tif 000015
【図１４】
2011049778.tif 000016
【図１５】
2011049778.tif 000017
【図１６】
2011049778.tif 000018
【図１７】
2011049778.tif 000019
【図１８】
2011049778.tif 000020
【図１９】
2011049778.tif 000021
【図２０】
2011049778.tif 000022
【図２１】
2011049778.tif 000023