(57)【特許請求の範囲】
【請求項１】
他の通信装置に送信すべき読出データを任意のタイミングで生成するデータ生成部と、
前記他の通信装置が書込データを生成するまで読出要求を前記他の通信装置から反復的に受信するとともに、前記読出要求に応じて読出応答を前記他の通信装置に反復的に送信し、かつ、前記読出データが生成された場合に、前記読出応答とともに前記読出データを前記他の通信装置に送信する通信部と
を備え、
前記他の通信装置から書込要求を受信すると、直前の前記読出応答とともに前記他の通信装置に送信した前記読出データを削除する、通信装置。
【請求項２】
通知先と通知元との間でデータ通信を行うことを要求する通信要求の通知機能を有しない、請求項１に記載の通信装置。
【請求項３】
他の通信装置に送信すべき読出データを生成するデータ生成部と、
前記他の通信装置が書込データを生成する以前のタイミングで読出要求を前記他の通信装置から反復的に受信するとともに、前記読出要求に応じて読出応答を前記他の通信装置に送信する通信部と、を備え
前記通信部は、前記読出データを生成した場合に、前記読出応答とともに前記読出データを前記他の通信装置に送信し、
前記他の通信装置から書込要求を受信すると、直前の前記読出応答とともに前記他の通信装置に送信した前記読出データを削除する、通信装置。
【請求項４】
前記他の通信端末が前記書込データを生成した場合に、前記通信部は、前記他の通信装置から前記書込データを受信する、請求項３に記載の通信装置。
【請求項５】
前記通信部は、前記読出データが生成されていない場合に、前記読出要求に応じて前記読出応答を反復的に前記他の通信装置に送信する、請求項３に記載の通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置、通信システムおよび通信方法に関する。
【背景技術】
【０００２】
従来、通信装置間で、一方の通信装置のみが通知する通信要求（コマンド）に応じて、パッシブな通信が行われることがある。この場合、通信要求を通知する一方の通信装置がイニシエータとして動作し、他方の通信装置がターゲットとして動作する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１６０８５６号公報
【特許文献２】特開２０１０−１３４６７２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、イニシエータとターゲットのそれぞれは、任意のタイミングでデータを生成する。イニシエータでは、ターゲットに送信すべきデータを生成すると、任意のタイミングで通信要求をターゲットに送信して、ターゲットにデータを送信することができる。一方、ターゲットでは、イニシエータに送信すべきデータを生成しても、イニシエータから通信要求を受信するまで、イニシエータにデータを送信することができなかった。
【０００５】
このような問題を解消するために、イニシエータに送信すべきデータの有無を示すフラグ情報をターゲットのメモリに記憶しておき、このフラグ情報をイニシエータから定期的に確認することが考えられる。しかし、この場合でも、フラグ情報を確認してから通信要求を送信するまでに余計な時間が費やされてしまう。また、フラグ情報の記憶および判定のために余計なリソースが費やされてしまう。
【０００６】
そこで、本発明は、ターゲットとして動作する通信装置からイニシエータとして動作する通信装置に任意のタイミングでデータを送信可能な、通信装置、通信システムおよび通信方法を提供しようとするものである。
【課題を解決するための手段】
【０００７】
本発明のある観点によれば、他の通信装置に送信すべき書込データを任意のタイミングで生成するデータ生成部と、書込データが生成されるまで読出要求を他の通信装置に反復的に送信するとともに、読出要求に応じて読出応答を他の通信装置から反復的に受信する通信部と、他の通信装置が読出データを任意のタイミングで生成したときに、他の通信装置から読出応答とともに受信される読出データを取得するデータ取得部とを備える通信装置が提供される。
【０００８】
本発明の他の観点によれば、他の通信装置に送信すべき読出データを任意のタイミングで生成するデータ生成部と、他の通信装置が書込データを生成するまで読出要求を他の通信装置から反復的に受信するとともに、読出要求に応じて読出応答を他の通信装置に反復的に送信し、かつ、読出データが生成されたときに、読出応答とともに読出データを他の通信装置に送信する通信部とを備える通信装置が提供される。
【０００９】
本発明の他の観点によれば、第１通信装置と第２通信装置を有する通信システムが提供される。第１通信装置は、第２通信装置に送信すべき書込データを任意のタイミングで生成するデータ生成部と、書込データが生成されるまで読出要求を第２通信装置に反復的に送信するとともに、読出要求に応じて読出応答を第２通信装置から反復的に受信する通信部と、第２通信装置が読出データを生成したときに、第２通信装置から読出応答とともに受信される読出データを取得するデータ取得部とを備える。第２通信装置は、第１通信装置に送信すべき読出データを任意のタイミングで生成するデータ生成部と、第１通信装置が書込データを生成するまで読出要求を第１通信装置から反復的に受信するとともに、読出要求に応じて読出応答を第１通信装置に反復的に送信し、かつ、読出データが生成されたときに、読出応答とともに読出データを第１通信装置に送信する通信部とを備える。
【００１０】
本発明の他の観点によれば、第１通信装置は、第２通信装置に送信すべき書込データを任意のタイミングで生成し、第２通信装置は、第１通信装置に送信すべき読出データを任意のタイミングで生成し、第１通信装置は、書込データを生成するまで読出要求を第２通信装置に反復的に送信し、第２通信装置は、読出要求に応じて読出応答を第１通信装置に反復的に送信し、第１通信装置は、読出応答を受信し、第２通信装置が読出データを生成したときに、第２通信装置から読出応答とともに受信される読出データを取得することを含む通信方法が提供される。
【発明の効果】
【００１１】
以上説明したように本発明によれば、ターゲットとして動作する通信装置からイニシエータとして動作する通信装置に任意のタイミングでデータを送信可能な、通信装置、通信システムおよび通信方法を提供することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の実施形態に係る通信方法の概要を示す図である。
【図２】イニシエータとターゲットの間で行われるパッシブな通信を示す図である。
【図３】通信システムの機能構成を示すブロック図である。
【図４】イニシエータの動作を示すフロー図である。
【図５】ターゲットの動作を示すフロー図である。
【図６】本発明の実施形態に係る通信方法を示すシーケンス図である。
【図７】通信要求／通信応答のデータ構造例を示す図である。
【図８】属性情報ブロックのデータ構造例を示す図である。
【発明を実施するための形態】
【００１３】
以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１４】
[１．通信方法の概要]
まず、図１を参照して、本発明の実施形態に係る通信方法の概要を説明する。図１は、本発明の実施形態に係る通信方法の概要を示す図である。
【００１５】
図１に示すように、本発明の実施形態に係る通信方法は、イニシエータ１０として動作する第１通信装置と、ターゲット２０として動作する第２通信装置との間で行われる。イニシエータ１０は、例えばリーダライタとコントローラを含み、ターゲット２０は、ＲＦＩＤ（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ  ＩＤｅｎｔｉｆｉｃａｔｉｏｎ）モジュールとホスト（ＣＰＵ）を含む。イニシエータ１０とターゲット２０の間では、イニシエータ１０が送信する書込要求、読出要求等の通信要求（コマンド）に応じて、パッシブなデータ通信が行われる。
【００１６】
本願発明に係る通信方法において、イニシエータ１０は、ターゲット２０に送信すべき書込データを任意のタイミングで生成し、ターゲット２０は、イニシエータ１０に送信すべき読出データを任意のタイミングで生成する。イニシエータ１０は、書込データを生成すると、書込要求と書込データをターゲット２０に送信し、ターゲット２０は、書込要求に応じて書込データを取得する。
【００１７】
イニシエータ１０は、書込データを生成するまで読出要求をターゲット２０に反復的に送信し、ターゲット２０は、読出要求に応じて読出応答をイニシエータ１０に反復的に送信する。そして、イニシエータ１０は、読出応答を受信し、ターゲット２０が読出データを生成したときに、ターゲット２０から読出応答とともに受信される読出データを取得する。
【００１８】
これにより、ターゲット２０は、通信要求の通知機能を有していなくても、反復的に受信する読出要求に対して読出データの生成タイミングで応答することで、任意のタイミングで読出データをイニシエータ１０に送信することができる。これにより、イニシエータ１０とターゲット２０の間では、データの生成タイミングに合わせて、双方向通信を効率的に行うことができる。
【００１９】
[２．通信システムの構成]
つぎに、図２および図３を参照して、本発明の実施形態に係る通信システムの構成について説明する。図２は、イニシエータ１０とターゲット２０の間で行われるパッシブな通信を示す図である。
【００２０】
図２に示すように、イニシエータ１０とターゲット２０の間では、近距離無線通信（ＮＦＣ：Ｎｅａｒ  Ｆｉｅｌｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎ）等のプロトコルに従って、パッシブな通信が行われる。ＮＦＣは、電磁誘導による近距離無線通信のプロトコルであり、例えばＩＳＭ（Ｉｎｄｕｓｔｒｉａｌ  Ｓｃｉｅｎｔｉｆｉｃ  Ｍｅｄｉｃａｌ）バンドの１３．５６ＭＨｚ等の単一周波数の搬送波を利用する。近距離無線通信は、互いに数１０ｃｍ程度離れた通信装置間で行われる通信形態であり、互いに接触した通信装置間で行われる通信形態も含んでいる。
【００２１】
ＮＦＣでは、パッシブモードまたはアクティブモードで通信が行われる。パッシブモードでは、図２に示すように、一方の通信装置がイニシエータ１０として動作し、他方の通信装置がターゲット２０として動作する。イニシエータ１０は、通信要求（コマンド）をターゲット２０に送信し、ターゲット２０は、通信要求に応じて通信応答（レスポンス）をイニシエータ１０に送信する。イニシエータ１０は、自らが発生する電磁波Ｒ（に対応する搬送波）を変調することで、通信要求とデータをターゲット２０に送信し（状態ＳＴ２１）、ターゲット２０は、イニシエータ１０が発生する電磁波Ｒ（に対応する搬送波）を負荷変調することで、通信応答とデータをイニシエータ１０に送信する（状態ＳＴ２２）。
【００２２】
図３は、通信システムの機能構成を示すブロック図である。図３に示すように、通信システムは、イニシエータ１０とターゲット２０からなる。
【００２３】
イニシエータ１０は、いずれも不図示のコントローラとコントローラに接続されたリーダライタとを含む。コントローラは、パーソナルコンピュータ、ＰＤＡ、携帯電話、コンシューマエレクトロニクス製品等でもよく、これらの装置に内蔵されたＣＰＵでもよい。ターゲット２０は、いずれも不図示のホスト（ＣＰＵ）とホストに接続されたＲＦＩＤモジュールとを含む。ホストは、パーソナルコンピュータ、ＰＤＡ、携帯電話、コンシューマエレクトロニクス製品等でもよく、これらの装置に内蔵されたＣＰＵでもよい。コントローラとリーダライタの間およびホストとＩＤの間は、通信インタフェースを通じてそれぞれに接続される。
【００２４】
イニシエータ１０として動作する第１通信装置は、制御部１１、記憶部１３、データ処理部１５を含んでいる。制御部１１は、データ生成部、データ取得部として機能し、データ処理部１５は、通信部として機能する。図３では、イニシエータ１０に含まれる制御部１１、記憶部１３、データ処理部１５が一体に構成されているが、部分的に別体に構成されてもよい。
【００２５】
制御部１１は、ターゲット２０に送信すべき書込データを任意のタイミングで生成する。制御部１１は、書込データの生成を判定し、書込データを生成したときに書込要求を生成し、書込要求を書込データとともにターゲット２０に送信するようにデータ処理部１５を制御する。制御部１１は、書込データを生成するまで読出要求を反復的に生成し、読出要求をターゲット２０に送信するようにデータ処理部１５を制御する。また、制御部１１は、ターゲット２０が読出データを生成したときに、ターゲット２０から読出応答とともに受信される読出データを取得するようにデータ処理部１５を制御し、取得した読出データを記憶部１３に格納する。
【００２６】
データ処理部１５は、アンテナコイル等を用いて、電磁波を変調して送信することで、書込データとともに書込要求をターゲット２０に送信し、読出要求をターゲット２０に送信する。また、ターゲット２０により負荷変調された電磁波を受信することで、書込応答をターゲット２０から受信し、読出データとともに読出応答をターゲット２０から受信する。データ処理部１５は、書込データが生成されたときに、書込データとともに書込要求をターゲット２０に送信し、書込データが生成されるまで読出要求をターゲット２０に反復的に送信する。
【００２７】
ターゲット２０として動作する第２通信装置は、制御部２１、記憶部２３、データ処理部２５を含んでいる。制御部２１は、データ生成部、データ取得部として機能し、データ処理部２５は、通信部として機能する。図３では、ターゲット２０に含まれる制御部２１、記憶部２３、データ処理部２５が一体に構成されているが、部分的に別体に構成されてもよい。
【００２８】
制御部２１は、書込要求を受信すると、書込要求とともに受信される書込データを取得して記憶部２３に格納し、書込応答をイニシエータ１０に送信するようにデータ処理部２５を制御する。制御部２１は、イニシエータ１０に送信すべき読出データを任意のタイミングで生成する。制御部２１は、読出要求を受信すると、読出データの生成を判定し、読出応答をイニシエータ１０に送信するようにデータ処理部２５を制御する。ここで、制御部２１は、読出データを生成したときに、読出データとともに読出応答を送信し、読出データを生成していないときに読出応答を送信するようにデータ処理部２５を制御する。
【００２９】
データ処理部２５は、アンテナコイル等を用いて、変調された電磁波を受信することで、書込データとともに書込要求をイニシエータ１０から受信し、読出要求をイニシエータ１０から受信する。また、イニシエータ１０からの電磁波を負荷変調して送信することで、書込応答をイニシエータ１０に送信し、読出応答をイニシエータ１０に送信する。データ処理部２５は、読出データが生成されたときに、読出応答とともに読出データをイニシエータ１０に送信し、読出データが生成されていないときに、読出応答をイニシエータ１０に送信する。
【００３０】
[３．通信システムの動作]
つぎに、図４から図６を参照して、イニシエータ１０とターゲット２０の間で行われるデータ通信の手順を説明する。図４は、イニシエータ１０の動作を示すフロー図であり、図５は、ターゲット２０の動作を示すフロー図である。なお、以下では、イニシエータ１０とターゲット２０の間では、ポーリング要求およびポーリング応答を通じて、近距離無線通信の接続が確立されているとする。
【００３１】
イニシエータ１０側の制御部１１は、任意のタイミングで書込データを生成する。書込データは、ターゲット２０に書込むために、イニシエータ１０から送信すべきデータである。図４に示すように、制御部１１は、書込データの生成を判定する（ステップＳ１１）。制御部１１は、送信すべき書込データを生成した場合（ステップＳ１１で「Ｙｅｓ」）にステップＳ１２〜Ｓ１６の書込処理を行い、書込データを生成していない場合（ステップＳ１１で「Ｎｏ」）にステップＳ１７〜Ｓ２２の読出処理を行う。
【００３２】
書込処理では、制御部１１は、通信要求として書込要求を生成する（ステップＳ１２）。書込要求は、ターゲット２０にデータの書込みを要求するために生成される。制御部１１は、書込要求および書込データをデータ処理部１５に供給する。書込データは、制御部１１から直接供給されてもよく、記憶部１３から読出して供給されてもよい。
【００３３】
データ処理部１５は、書込要求と書込データをターゲット２０に送信し（ステップＳ１３）、書込要求に応じて書込応答をターゲット２０から受信する（ステップＳ１４）。書込データは、書込要求に含まれて送信されてもよく、書込要求とは別途に送信されてもよい。書込応答は、データの書込結果をイニシエータ１０に通知するために生成される。データ処理部１５は、受信した書込応答を制御部１１に供給する。
【００３４】
制御部１１は、データが適切に書込まれたかを書込応答に基づき判定する（ステップＳ１５）。制御部１１は、適切な書込が確認された場合（ステップＳ１５で「Ｙｅｓ」）に、書込済みのデータを記憶部１３から削除し（ステップＳ１６）、適切な書込が確認されなかった場合（ステップＳ１５で「Ｎｏ」）にエラー応答を行う（ステップＳ２３）。なお、エラー応答では、ステップＳ１２の処理に復帰して書込処理が再開されてもよく、ステップＳ１１の処理に復帰して書込データの生成が判定されてもよい。
【００３５】
一方、読出処理では、制御部１１は、通信要求として読出要求を生成する（ステップＳ１７）。読出要求は、ターゲット２０にデータの読出しを要求するために生成される。制御部１１は、読出要求をデータ処理部１５に供給する。
【００３６】
データ処理部１５は、読出要求をターゲット２０に送信し（ステップＳ１８）、読出要求に応じて読出応答をターゲット２０から受信する（ステップＳ１９）。読出応答は、データの読出結果をイニシエータ１０に通知するために生成される。データ処理部１５は、受信した読出応答を制御部１１に供給する。
【００３７】
ここで、データ処理部１５は、ターゲット２０が読出データを生成した場合、つまり、読出要求を受信したターゲット２０がイニシエータ１０に送信すべき読出データを生成している場合、読出応答とともに読出データをターゲット２０から受信する。一方、データ処理部１５は、ターゲット２０が読出データを生成していない場合、読出データをターゲット２０から受信しない。読出データは、読出応答に含まれて受信されてもよく、読出応答とは別途に受信されてもよい。
【００３８】
制御部１１は、データが適切に読出されたかを読出応答に基づき判定する（ステップＳ２０）。制御部１１は、適切な読出が確認された場合（ステップＳ２０で「Ｙｅｓ」）に、読出データを受信しているかを判定し（ステップＳ２１）、適切な読出が確認されなかった場合（ステップＳ２０で「Ｎｏ」）にエラー応答を行う（ステップＳ２３）。なお、エラー応答では、ステップＳ１７の処理に復帰して読出処理が再開されてもよく、ステップＳ１１の処理に復帰して書込データの生成が判定されてもよい。そして、制御部１１は、読出データを受信している場合（ステップＳ２１で「Ｙｅｓ」）に、読出データをデータ処理部１５から取得して記憶部１３に格納する（ステップＳ２２）。
【００３９】
なお、データ処理部１５は、ターゲット２０が読出データを生成していない場合でも、読出応答とともにダミーデータをターゲット２０から受信してもよい。ダミーデータは、イニシエータ１０に送信すべきデータではなく、イニシエータ１０にとって無為なデータである。この場合も、ダミーデータは、読出応答に含まれて受信されてもよく、読出応答とは別途に受信されてもよい。
【００４０】
制御部１１は、ステップＳ１６の処理後、またはステップＳ２２の処理後（またはステップＳ２１で「Ｎｏ」と判定された場合）に、ステップＳ１１から処理を再開する。制御部１１は、ターゲット２０との間で近距離無線通信の接続が確立されている間に亘って、上記処理を反復的に行う。
【００４１】
ターゲット２０側の制御部２１は、データ処理部２５を通じてリーダライタから通信要求（コマンド）を受信する。図５に示すように、制御部２１は、適切な通信要求を受信したかを判定する（ステップＳ３１）。制御部２１は、適切な通信要求を受信した場合（ステップＳ３１で「Ｙｅｓ」）に以下の処理を行い、適切な通信要求を受信しなかった場合（ステップＳ３１で「Ｎｏ」）にエラー応答を行う（ステップＳ４３）。制御部２１は、書込要求を受信した場合（ステップＳ３２で「Ｙｅｓ」）にステップＳ３３〜Ｓ３６の書込処理を行い、読出要求を受信した場合（ステップＳ３７で「Ｙｅｓ」）にステップＳ３８〜Ｓ４２の読出処理を行う。
【００４２】
書込処理では、制御部２１は、直前の読出応答とともにイニシエータ１０に送信した読出データを記憶部１３から削除する（ステップＳ３３）。これは、書込要求の受信は、直前の読出処理がイニシエータ１０とターゲット２０の間で適切に完了したことを意味するためである。制御部２１は、書込要求とともに受信した書込データをデータ処理部２５から取得して記憶部２３に格納する（ステップＳ３４）。制御部２１は、データの書込結果をデータ処理部２５に供給する。データ処理部２５は、書込結果を含む書込応答を生成し（ステップＳ３５）、イニシエータ１０に送信する（ステップＳ３６）。
【００４３】
読出処理では、制御部２１は、送信すべき読出データを生成しているかを判定する（ステップＳ３８）。なお、制御部２１は、任意のタイミングで読出データを生成する。読出データは、イニシエータ１０に読出されるために、ターゲット２０から送信すべきデータである。
【００４４】
制御部２１は、読出データを生成した場合（ステップＳ３８で「Ｙｅｓ」）、つまり、イニシエータ１０に送信すべき読出データを生成している場合、読出データとともにデータの読出結果をデータ処理部２５に供給する。データ処理部２５は、読出結果を含む読出応答を生成し（ステップＳ３９）、読出データとともにイニシエータ１０に送信する（ステップＳ４０）。読出データは、読出応答に含まれて送信されてもよく、読出応答とは別途に送信されてもよい。一方、制御部２１は、読出データを生成していない場合（ステップＳ３８で「Ｎｏ」）、データの読出結果をデータ処理部２５に供給する。データ処理部２５は、読出結果を含む読出応答を生成し（ステップＳ４１）、イニシエータ１０に送信する（ステップＳ４２）。
【００４５】
なお、データ処理部２５は、読出データを生成していない場合でも、読出応答とともにダミーデータをイニシエータ１０に送信してもよい。この場合も、ダミーデータは、読出応答に含まれて送信されてもよく、読出応答とは別途に送信されてもよい。
【００４６】
制御部２１は、ステップＳ３６、Ｓ４０、Ｓ４２の処理後、ステップＳ３１から処理を再開する。制御部２１は、イニシエータ１０との間で近距離無線通信の接続が確立されている間に亘って、上記処理を反復的に行う。
【００４７】
図６は、本発明の実施形態に係る通信方法を示すシーケンス図である。なお、以下では、イニシエータ１０とターゲット２０の間では、ポーリング要求およびポーリング応答を通じて、近距離無線通信の接続が確立されているとする。
【００４８】
図６に示す例において、イニシエータ１０側の制御部１１は、タイミングＩ１、Ｉ２、Ｉ３、Ｉ４のうちタイミングＩ３の直前でのみ書込データ（データ２）を生成している（ステップＳ７０）。また、ターゲット２０側の制御部２１は、タイミングＴ１、Ｔ２、Ｔ３、Ｔ４のうちタイミングＴ２の直前でのみ読出データ（データ１）を生成している（ステップＳ６０）。
【００４９】
まず、イニシエータ１０側の制御部１１は、タイミングＩ１の前に書込データを生成していないので読出要求を生成してデータ処理部１５に供給し（ステップＳ５１）、データ処理部１５は、読出要求をターゲット２０に送信する（ステップＳ５２）。
【００５０】
ターゲット２０側のデータ処理部２５は、読出要求を受信し、読出要求を制御部２１に通知する（ステップＳ５３）。制御部２１は、タイミングＴ１の前に読出データを生成していないので、空データまたはダミーデータをデータ処理部２５に供給する（ステップＳ５４）。データ処理部２５は、読出応答を生成し、空データまたはダミーデータとともにイニシエータ１０に送信する（ステップＳ５５）。
【００５１】
イニシエータ１０側のデータ処理部１５は、読出応答を受信し、読出応答を制御部１１に通知する（ステップＳ５６）。この場合、データ処理部１５は、制御部１１に読出データを供給しなくてもよく、ダミーデータを供給してもよい。
【００５２】
つぎに、イニシエータ１０側の制御部１１は、タイミングＩ２の前に書込データを生成していないので読出要求を生成してデータ処理部１５に供給し（ステップＳ６１）、データ処理部１５は、読出要求をターゲット２０に送信する（ステップＳ６２）。
【００５３】
ターゲット２０側のデータ処理部２５は、読出要求を受信し、読出要求を制御部２１に通知する（ステップＳ６３）。制御部２１は、タイミングＴ２の前に読出データ（データ１）を生成している（ステップＳ６０）ので、読出データをデータ処理部２５に供給する（ステップＳ６４）。データ処理部２５は、読出応答を生成し、読出データとともにイニシエータ１０に送信する（ステップＳ６５）。
【００５４】
イニシエータ１０側のデータ処理部１５は、読出応答を受信し、読出応答を制御部１１に通知する（ステップＳ６６）。この場合、データ処理部１５は、制御部１１に読出データを供給し、制御部１１は、読出データを取得して記憶部１３に格納する。これにより、読出データは、イニシエータ１０によりターゲット２０から読出される。
【００５５】
つぎに、イニシエータ１０側の制御部１１は、タイミングＩ３の前に書込データ（データ２）を生成している（ステップＳ７０）ので書込要求を生成し、書込データとともにデータ処理部１５に供給し（ステップＳ７１）、データ処理部１５は、書込要求を書込データとともにターゲット２０に送信する（ステップＳ７２）。
【００５６】
ターゲット２０側のデータ処理部２５は、書込要求を受信し、書込要求を制御部２１に通知するとともに、書込データを制御部２１に供給し（ステップＳ７３）、制御部２１は、書込データを取得して記憶部２３に格納し、書込結果（ＯＫ）をデータ処理部２５に通知する（ステップＳ７４）。これにより、書込データは、イニシエータ１０によりターゲット２０に書込まれる。データ処理部２５は、書込応答を生成し、イニシエータ１０に送信する（ステップＳ７５）。
【００５７】
イニシエータ１０側のデータ処理部１５は、書込応答を受信し、書込応答を制御部１１に通知する（ステップＳ７６）。
【００５８】
つぎに、イニシエータ１０側の制御部１１は、タイミングＩ４の前に書込データを生成していないので読出要求を生成してデータ処理部１５に供給し（ステップＳ８１）、データ処理部１５は、読出要求をターゲット２０に送信する（ステップＳ８２）。
【００５９】
ターゲット２０側のデータ処理部２５は、読出要求を受信し、読出要求を制御部２１に通知する（ステップＳ８３）。制御部２１は、タイミングＴ４の前に読出データを生成していないので、空データまたはダミーデータをデータ処理部２５に供給する（ステップＳ８４）。データ処理部２５は、読出応答を生成し、空データまたはダミーデータとともにイニシエータ１０に送信する（ステップＳ８５）。
【００６０】
イニシエータ１０側のデータ処理部１５は、読出応答を受信し、読出応答を制御部１１に通知する（ステップＳ８６）。この場合、データ処理部１５は、制御部１１に読出データを供給しなくてもよく、ダミーデータを供給してもよい。
【００６１】
なお、図６では、読出処理に続いて書込処理を行う場合について説明した。しかし、書込処理に続いて読出処理を行う場合、または同一の処理を続けて行う場合についても同様に説明される。いずれの場合でも、イニシエータ１０とターゲット２０の間では、イニシエータ１０が書込データを生成するまで読出処理が反復的に行われる。
【００６２】
[４．通信システムの例]
以下では、前述した通信方法をＮＦＣフォーラム（登録商標）のＴｙｐｅ３  Ｔａｇ  Ｏｐｅｒａｔｉｏｎ仕様書に準拠した近距離無線通信に適用する場合について説明する。
【００６３】
図７は、通信要求／通信応答のデータ構造例を示す図である。書込要求は、仕様書に規定される「Ｕｐｄａｔｅ  Ｃｏｍｍａｎｄ」に相当し、そのデータ構造Ｗｒｅｑは、要求識別子（ＩＤ）、通信ＩＤ（ＩＤｍ）、サービス数（ＮＯＳ）、サービスコードリスト（ＳＬＳＴ）、ブロック数（ＮＯＢ）、ブロックリスト（ＢＬＳＴ）、書込データ（ＤＡＴＡ）の各フィールドからなる。このデータ構造Ｗｒｅｑでは、書込データを含んだ書込要求がイニシエータ１０からターゲット２０に送信されることになる。書込応答は、仕様書に規定される「Ｕｐｄａｔｅ  Ｒｅｓｐｏｎｓｅ」に相当し、そのデータ構造Ｗｒｅｓは、応答識別子（ＩＤ）、通信ＩＤ（ＩＤｍ）、結果コード（ＳＦ）の各フィールドからなる。
【００６４】
ターゲット２０側のデータ処理部２５は、書込要求を受信すると、要求識別子、ブロック数、ブロックリスト、書込データを抽出して制御部２１に供給する。ここで、ブロック数、ブロックリストは、ターゲット２０に書込まれる書込データのブロック数・番号を指定している。制御部２１は、書込処理が完了すると、書込結果を示す結果コードをデータ処理部２５に供給する。ここで、結果コードは、書込処理が適切に完了したかを示している。データ処理部２５は、結果コードとともに応答識別子、通信ＩＤのデータを含む書込応答を生成してイニシエータ１０に送信する。
【００６５】
読出要求は、仕様書に規定される「Ｃｈｅｃｋ  Ｃｏｍｍａｎｄ」に相当し、そのデータ構造Ｒｒｅｑは、要求識別子（ＩＤ）、通信ＩＤ（ＩＤｍ）、サービス数（ＮＯＳ）、サービスコードリスト（ＳＬＳＴ）、ブロック数（ＮＯＢ）、ブロックリスト（ＢＬＳＴ）の各フィールドからなる。読出応答は、仕様書に規定される「Ｃｈｅｃｋ  Ｒｅｓｐｏｎｓｅ」に相当し、そのデータ構造Ｒｒｅｓは、応答識別子（ＩＤ）、通信ＩＤ（ＩＤｍ）、結果コード（ＳＦ）、ブロック数（ＮＯＢ）、読出データ（ＤＡＴＡ）の各フィールドからなる。このデータ構造Ｒｒｅｓでは、読出データを含んだ読出応答がターゲット２０からイニシエータ１０に送信されることになる。
【００６６】
ターゲット２０側のデータ処理部２５は、読出要求を受信すると、要求識別子、ブロック数、ブロックリストを抽出して制御部２１に供給する。ここで、ブロック数、ブロックリストは、ターゲット２０から読出される読出データのブロック数・番号を指定している。制御部２１は、読出処理が完了すると、結果コード、ブロック数、読出データをデータ処理部２５に供給する。ここで、結果コードは、読出処理が適切に完了したかを示し、ブロック数は、読出データのブロック数を指定している。データ処理部２５は、結果コードとともに応答識別子、通信ＩＤ、ブロック数、読出データを含む読出応答を生成してイニシエータ１０に送信する。
【００６７】
図８は、属性情報ブロックのデータ構造例を示す図である。図８に示すように、属性情報ブロックのデータ構造ＡＩは、マッピングバージョン（Ｖｅｒ）、同時読出可能ブロック数（Ｎｂｒ）、同時書込可能ブロック数（Ｎｂｗ）、格納領域ブロック数（Ｎｍａｘｂ）、書込途中フラグ（ＷｒｉｔｅＦ）、アクセス属性フラグ（ＲＷＦｌａｇ）、実データ長（Ｌｎ）、誤り検出符号（Ｃｈｅｃｋｓｕｍ）の各フィールドからなる。
【００６８】
ターゲット２０は、読出要求を受信すると、属性情報ブロックの実データ長フィールドおよび誤り検出符号フィールドを更新して、読出応答とともにイニシエータ１０に送信する。ここで、実データ長フィールドは、ターゲット２０が読出データを生成したときに、読出データのデータ長の値で更新され、読出データを生成していないときに、０値で更新される。ターゲット２０は、読出応答とともに属性情報ブロックを受信すると、実データ長フィールドの値として指定されている数のデータを、読出応答の読出データフィールドから読出す。
【００６９】
[５．まとめ]
以上説明したように、本発明の実施形態に係る通信システムおよび通信方法によれば、ターゲット２０は、通信要求の通知機能を有していなくても、反復的に受信する読出要求に対して読出データの生成タイミングで応答することで、任意のタイミングで読出データをイニシエータ１０に送信することができる。これにより、イニシエータ１０とターゲット２０の間では、データの生成タイミングに合わせて、双方向通信を効率的に行うことができる。
【００７０】
以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。
【００７１】
例えば、上記実施形態の説明では、書込データの生成と読出データの生成とがイニシエータ１０側／ターゲット２０側の制御部１１、２１によりそれぞれに判定される場合について説明した。しかし、書込データの生成と読出データの生成とは、イニシエータ１０側／ターゲット２０側のデータ処理部１５、２５によりそれぞれに判定されてもよい。この場合、データ処理部１５、２５は、制御部１１、２１からデータの生成を通知されることで、データの生成を判定する。
【符号の説明】
【００７２】
１０    イニシエータ
２０    ターゲット
１１、２１    制御部
１３、２３    記憶部
１５、２５    データ処理部
【図１】
0005935235.tif 000002
【図２】
0005935235.tif 000003
【図３】
0005935235.tif 000004
【図４】
0005935235.tif 000005
【図５】
0005935235.tif 000006
【図６】
0005935235.tif 000007
【図７】
0005935235.tif 000008
【図８】
0005935235.tif 000009