(57)【要約】【課題】複数のＩＣカードに対して同一のデータを送信する場合、送信に時間がかからず、データ伝送効率を向上させることができるようなデータ伝送システムを提供する。【解決手段】リーダライタ１と複数のＩＣカード３ａ〜３ｃとの間でデータを送受信するデータ伝送システムであって、前記リーダライタ１は、前記複数のＩＣカード３ａ〜３ｃに対して同一のデータを送信する場合、前記同一のデータを含むＩブロックフレーム２２のカード識別子１８として予約情報番号（例えば“１５”）を格納し、前記Ｉブロックフレーム２２を１回のみ送信し、前記複数のＩＣカード３ａ〜３ｃの各々は、前記カード識別子１８として格納された予約情報番号から、前記Ｉブロックフレーム２２が前記複数のＩＣカード３ａ〜３ｃの全てに対するものであることを認識する。【選択図】図１
2005084873.tif 000002
【特許請求の範囲】
【請求項１】
リーダライタと複数のＩＣカードとの間でデータを送受信するデータ伝送システムにおいて、
前記リーダライタは、前記複数のＩＣカードに対して同一のデータを送信する場合、前記同一のデータを含むＩブロックフレームのカード識別子として予約情報番号を格納し、前記Ｉブロックフレームを１回のみ送信し、
前記複数のＩＣカードの各々は、前記カード識別子として格納された予約情報番号から、前記Ｉブロックフレームが前記複数のＩＣカードの全てに対するものであることを認識することを特徴とするデータ伝送システム。
【請求項２】
前記複数のＩＣカードは、分割されたＩブロックフレームに対する応答である場合、レスポンスコマンドとしてＲ（ＡＣＫ）情報を、最終のＩブロックフレームに対する応答である場合、前記レスポンスコマンドとしてＩブロックフレーム情報を、前記複数のＩＣカード毎に予め割り当てられたカード識別子に応じて時系列で前記リーダライタに送信することを特徴とする請求項１に記載のデータ伝送システム。
【請求項３】
前記複数のＩＣカードは、前記リーダライタからのＲＥＱＢコマンドまたはＷＵＰＢコマンドに対するレスポンスコマンドとして前記リーダライタにＡＴＱＢコマンドを送信する場合、前記ＡＴＱＢコマンドのアプリケーションデータのパラメータ情報として、前記予約情報番号に基づく前記Ｉブロックフレームが前記複数のＩＣカードの全てに対するものであることの認識可否の情報を格納することを特徴とする請求項１または２に記載のデータ伝送システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、リーダライタと複数のＩＣカードとの間でデータを送受信するデータ伝送システムに関する。
【背景技術】
【０００２】
従来、このようなデータ伝送システムに係る仕様は、例えば非特許文献１により定められている。従来のデータ伝送システムにおいて、リーダライタおよびＩＣカードは次のように動作する。
【０００３】
まず、リーダライタは、該リーダライタが発生する磁界内にＩＣカードが存在するか否かを確認するために、ＲＥＱＢコマンドまたはＷＵＰＢコマンドを送信してＩＣカードからのレスポンスコマンドを待つ。もし磁界内にＩＣカードが存在する場合は、該磁界内のＩＣカードは、ＲＥＱＢコマンドを受信する。ＩＣカードは、受信したコマンドが正常受信でかつＲＥＱＢコマンドであった場合は、そのコマンド内の応用分野識別子（ＡＦＩ）パラメータを確認し、該ＩＣカードに対応するパラメータであればＡＴＱＢコマンドをレスポンスコマンドとしてリーダライタに送信する。この際、レスポンスコマンドを送信するタイミングは、ＲＥＱＢコマンド内のスロット数およびタイムスロット可否パラメータに依存する。タイムスロット可否パラメータが“１”の場合は、各ＩＣカードは“０”からスロット数までの間で乱数を発生させ、一定の間隔で区切られた時間と乱数との積の計算結果で表した時間のタイミングでＡＴＱＢコマンドを送信する。タイムスロット可否パラメータが“０”の場合は、各ＩＣカードは“０”からスロット数までの間で乱数を発生させ、その乱数を保持しておく。乱数の値が“０”であれば即座にＡＴＱＢコマンドを送信し、それ以外であればリーダライタからのＳｌｏｔ＿ＭＡＲＫＥＲコマンドを待つ。ＩＣカードは、受信したコマンドが正常受信であるＳｌｏｔ＿ＭＡＲＫＥＲコマンドであった場合は、そのコマンド内のＡＰｎパラメータを参照し、保持しておいた乱数と一致するか否かを判断し、一致した場合はＡＴＱＢコマンドを送信する。リーダライタが送信するＳｌｏｔ＿ＭＡＲＫＥＲコマンドは、ＡＰｎがＲＥＱＢコマンドで送信したスロット数の数（“０”からスロット数まで）の全てを一定の間隔で送信し、送信完了毎にＡＴＱＢコマンドの受信を待つ。
【０００４】
リーダライタは、上述した２種類の何れかの方法で受信したレスポンスコマンドが正常受信でかつＡＴＱＢコマンドであれば有効情報として取り込む。このような手順によって、磁界内に存在する複数のＩＣカードの情報を取得する。
【０００５】
その後、リーダライタは、取得した各ＩＣカードのＡＴＱＢコマンドを基に通信したいＩＣカードに対してＡＴＴＲＩＢコマンドを送信する。この際、どのＩＣカードに対しての情報であるかの区別は識別コード（ＰＵＰＩ）パラメータにより表す。このＰＵＰＩは、各ＩＣカードからのＡＴＱＢコマンドに格納されているパラメータであり、ＩＣカード毎に異なるパラメータである。同時に、リーダライタは、該当するＩＣカードとの通信のためのカード識別子（ＣＩＤ）パラメータも割り当てて送信する。
【０００６】
磁界内に存在する全てのＩＣカードがリーダライタから正常受信であるＡＴＴＲＩＢコマンドを受信した場合は、そのコマンド内の識別コード（ＰＵＰＩ）を参照し、ＡＴＱＢコマンドで送信した識別コードと比較する。もしこれらの識別コードが一致した場合は、そのＩＣカードはＣＩＤをもって通信が確立され、リーダライタに対してＡＴＴＲＩＢコマンドのレスポンスコマンドを送信する。リーダライタは、該ＩＣカードから正常受信であるＡＴＴＲＩＢコマンドのレスポンスコマンドを受信した場合は、正常接続と判断しＩブロックフレームでの通信が可能な状態（活性化状態）となる。以降、他のＩＣカードと通信を行いたい場合は、該当するＩＣカードに対する識別コード（ＰＵＰＩ）および割り当てられていないＣＩＤをＡＴＴＲＩＢコマンドとして構築して送信し、同様な手順で通信を確立させる。
【０００７】
活性化状態にある場合のデータ伝送は、次のように行われる。すなわち、例えばパーソナルコンピュータ等の端末からリーダライタに送信先ＩＣカードのＣＩＤと送信データを入力すると、リーダライタはＩブロックフレームを用いて送信データを磁界に送信する。ただし、Ｉブロックフレームの最大サイズはＡＴＴＲＩＢコマンドにて決定しているため、それを超える情報量は１フレームとして構築できない。その場合は、Ｉブロックフレームを複数フレームに分けて構築する。
【０００８】
最初のＩブロックフレームのブロックフレーム番号は“０”として磁界に送信する。ＩＣカードは、受信したＩブロックフレームが自身のＣＩＤであるか否かを確認し、該当していれば、そのＩＣカードはそのＩブロックフレームを処理する。受信したＩブロックフレームが複数フレームに分割されて送信されたフレームであれば、ＩＣカードは、Ｒ（ＡＣＫ（１））ブロックフレームを磁界に送信して次のＩブロックフレームの受信を待つ。受信したＩブロックフレームが最終フレームであった場合は、今まで受信したＩブロックフレームの情報部を連結し、１つのコマンドフレームに構築する。
【０００９】
ＩＣカードは構築したコマンドフレームを処理し、そのレスポンスコマンドをＩブロックフレームに構築して磁界を介してリーダライタに送信する。この場合も、レスポンスコマンドの情報量に応じてＩブロックフレームを複数フレームに分けて送信する。リーダライタは、他のＩＣカードに対しても同様に送信データをＩブロックフレームとして構築して送信する。
【００１０】
【非特許文献１】「ＪＩＣＳＡＰ  ＩＣカード仕様  Ｖ２．０  第２部  近接型ＩＣカード」、ＩＣカードシステム利用促進協議会、平成１３年７月
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、従来のデータ伝送システムでは、磁界内にある複数のＩＣカードに対して同一のデータ（Ｉブロックフレーム）を送信する場合、それぞれのＩＣカードに対するＩブロックフレームの送信をＩＣカードの枚数分行う必要があり、送信に時間がかかってしまうという問題があった。
【００１２】
本発明は、このような実情に鑑みてなされたものであり、複数のＩＣカードに対して同一のデータを送信する場合、送信に時間がかからず、データ伝送効率を向上させることができるようなデータ伝送システムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
請求項１に係る発明のデータ伝送システムは、リーダライタと複数のＩＣカードとの間でデータを送受信するデータ伝送システムにおいて、前記リーダライタは、前記複数のＩＣカードに対して同一のデータを送信する場合、前記同一のデータを含むＩブロックフレームのカード識別子として予約情報番号を格納し、前記Ｉブロックフレームを１回のみ送信し、前記複数のＩＣカードの各々は、前記カード識別子として格納された予約情報番号から、前記Ｉブロックフレームが前記複数のＩＣカードの全てに対するものであることを認識することを特徴とする。
【００１４】
この構成によれば、リーダライタが、同一のデータを含むＩブロックフレームのカード識別子として予約情報番号（例えば“１５”）を格納し、該Ｉブロックフレームを１回のみ送信するので、時間をかけることなく複数のＩＣカードに対して同一のデータを送信することができ、データ伝送効率を向上させることができる。
【００１５】
また、請求項２に係る発明のデータ伝送システムは、請求項１に係る発明のデータ伝送システムにおいて、前記複数のＩＣカードは、分割されたＩブロックフレームに対する応答である場合、レスポンスコマンドとしてＲ（ＡＣＫ）情報を、最終のＩブロックフレームに対する応答である場合、前記レスポンスコマンドとしてＩブロックフレーム情報を、前記複数のＩＣカード毎に予め割り当てられたカード識別子に応じて時系列で前記リーダライタに送信することを特徴とする。
【００１６】
この構成によれば、複数のＩＣカードが、レスポンスコマンドとしてＲ（ＡＣＫ）情報やＩブロックフレーム情報を、カード識別子に応じて時系列でリーダライタに送信するので、レスポンスコマンド同士の衝突を防止することができる。
【００１７】
また、請求項３に係る発明のデータ伝送システムは、請求項１または２に係る発明のデータ伝送システムにおいて、前記複数のＩＣカードは、前記リーダライタからのＲＥＱＢコマンドまたはＷＵＰＢコマンドに対するレスポンスコマンドとして前記リーダライタにＡＴＱＢコマンドを送信する場合、前記ＡＴＱＢコマンドのアプリケーションデータのパラメータ情報として、前記予約情報番号に基づく前記Ｉブロックフレームが前記複数のＩＣカードの全てに対するものであることの認識可否の情報を格納することを特徴とする。
【００１８】
この構成によれば、複数のＩＣカードが、ＡＴＱＢコマンドのアプリケーションデータのパラメータ情報として、予約情報番号（例えば“１５”）に基づくＩブロックフレームが複数のＩＣカードの全てに対するものであることの認識可否の情報を格納するので、当該ＩＣカードの対応状況をリーダライタ側で判断することができる。
【発明の効果】
【００１９】
本発明のデータ伝送システムによれば、リーダライタが、同一のデータを含むＩブロックフレームのカード識別子として予約情報番号（例えば“１５”）を格納し、該Ｉブロックフレームを１回のみ送信するので、時間をかけることなく複数のＩＣカードに対して同一のデータを送信することができ、データ伝送効率を向上させることができる。
【発明を実施するための最良の形態】
【００２０】
以下、本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図１は本実施の形態に係るデータ伝送システムを示す構成図、図２は衝突防止処理を説明するためのシーケンス図、図３はＲＥＱＢコマンドを示すフレーム構成図、図４はＡＴＱＢコマンドを示すフレーム構成図、図５はＡＴＴＲＩＢコマンドを示すフレーム構成図、図６はＩブロックフレームを示すフレーム構成図、図７は１つのＩブロックフレームで構築できる場合の動作を説明するためのシーケンス図、図８は複数のＩブロックフレームで構築できる場合の動作を説明するためのシーケンス図である。
【００２１】
本実施の形態に係るデータ伝送システムは、図１に示すように、複数（本実施の形態においては、“３枚”）のＩＣカード３ａ〜３ｃと、パーソナルコンピュータ等の端末１７に接続されＩＣカード３ａ〜３ｃに対して磁界２を介してデータを送受信するリーダライタ１と、を備えている。リーダライタ１は、活性化状態においてＩＣカード３ａ〜３ｃに対して同一のデータを送信する場合、該同一のデータを含むＩブロックフレーム２２のカード識別子（ＣＩＤ）１８として予約情報番号（本実施の形態においては、“１５”）を格納し、Ｉブロックフレーム２２を１回のみ送信する（図６参照）。ＩＣカード３ａ〜３ｃの各々は、カード識別子１８として格納された予約情報番号から、Ｉブロックフレーム２２がＩＣカード３ａ〜３ｃの全てに対するものであることを認識する。
【００２２】
活性化状態において、ＩＣカード３ａ〜３ｃは、分割されたＩブロックフレームに対する応答である場合、レスポンスコマンドとしてＲ（ＡＣＫ）情報を、最終のＩブロックフレームに対する応答である場合、該レスポンスコマンドとしてＩブロックフレーム情報を、ＩＣカード３ａ〜３ｃ毎に予め割り当てられたカード識別子１５に応じて時系列でリーダライタ１に送信する（図７および図８参照）。
【００２３】
活性化状態となる前の衝突防止処理において、ＩＣカード３ａ〜３ｃは、リーダライタ１からのＲＥＱＢコマンド４またはＷＵＰＢコマンド４ａに対するレスポンスコマンドとしてリーダライタ１にＡＴＱＢコマンド７を送信する場合（図２、図３および図４参照）、ＡＴＱＢコマンド７のアプリケーションデータ９のパラメータ情報として、予約情報番号（本実施の形態においては、“１５”）に基づくＩブロックフレーム２２がＩＣカード３ａ〜３ｃの全てに対するものであることの認識可否の情報を格納する。
【００２４】
次に、本実施の形態に係るデータ伝送システムの動作について説明する。まず、リーダライタ１は、該リーダライタ１が発生する磁界２内にＩＣカード３ａが存在するか否かを確認するために、ＲＥＱＢコマンド４またはＷＵＰＢコマンド４ａを送信してＩＣカード３ａからのレスポンスコマンドを待つ。もし磁界２内にＩＣカード３ａが存在する場合は、ＩＣカード３ａはＲＥＱＢコマンド４を受信する。ＩＣカード３ａは、受信したＲＥＱＢコマンド４の誤り検出符号５を参照し、誤りが有るか否かを確認する。誤りが無かった場合は、正常受信と判断し、ＲＥＱＢコマンド４の応用分野識別子（ＡＦＩ）６を確認する。応用分野識別子６がＩＣカード３ａに対応するパラメータであれば、ＩＣカード３ａはレスポンスコマンドとしてＡＴＱＢコマンド７をリーダライタ１に送信する。送信するＡＴＱＢコマンド７のパラメータは、ＩＣカード３ａが、予約情報番号（本実施の形態においては、“１５”）に基づきＩブロックフレーム２２がＩＣカード３ａ〜３ｃの全てに対するものであることを認識可能（対応可能状態）である場合は、ＡＤＣ８を“００”とし、アプリケーションデータ９としてその旨を示す情報を格納する（図４参照）。ＩＣカード３ａがＡＴＱＢコマンド７を送信するタイミングは、ＲＥＱＢコマンド４またはＷＵＰＢコマンド４ａのスロット数１０およびタイムスロット可否パラメータ１１に依存する（図３参照）。タイムスロット可否パラメータ１１が“１”の場合は、ＩＣカード３ａは“０”からスロット数１０までの間で乱数を発生させ、一定の間隔で区切られた時間と乱数との積の計算結果で表した時間のタイミングでＡＴＱＢコマンド７を送信する。タイムスロット可否パラメータ１１が“０”の場合は、ＩＣカード３ａは“０”からスロット数１０までの間で乱数を発生させ、その乱数を保持しておく。乱数の値が“０”であれば即座にＡＴＱＢコマンド７を送信し、それ以外であればリーダライタ１からのＳｌｏｔ＿ＭＡＲＫＥＲコマンドを待つ。ＩＣカード３ａは、受信したコマンドが正常受信であるＳｌｏｔ＿ＭＡＲＫＥＲコマンドであった場合は、そのコマンド内のＡＰｎパラメータを参照し、保持しておいた乱数と一致するか否かを判断し、一致した場合はＡＴＱＢコマンド７を送信する。リーダライタ１が送信するＳｌｏｔ＿ＭＡＲＫＥＲコマンドは、ＡＰｎがＲＥＱＢコマンド４またはＷＵＰＢコマンド４ａで送信したスロット数１０の数（“０”からスロット数まで）の全てを一定の間隔で送信し、ＡＴＱＢコマンド７の受信を待つ。もし、磁界２内にＩＣカード３ａ以外にＩＣカード３ｂ、ＩＣカード３ｃと複数存在する場合は、ＩＣカード３ｂ、ＩＣカード３ｃに対してもＩＣカード３ａと同様の処理が行われる。これにより、ＩＣカード３ａ〜３ｃからＡＴＱＢコマンド７が異なるタイミングでリーダライタ１に送信され、送信データの衝突を防止する。
【００２５】
一方、リーダライタ１は、送信したＲＥＱＢコマンド４またはＷＵＰＢコマンド４ａのタイムスロット可否パラメータ１１に応じた受信処理を行い、ＡＴＱＢコマンド７が正常受信であれば有効情報として取り込む。以上のような手順によって、磁界２内に存在するＩＣカード３ａ〜３ｃのＡＴＱＢコマンド７を取得することができ、これにより予約情報番号（本実施の形態においては、“１５”）に基づくＩブロックフレーム２２がＩＣカード３ａ〜３ｃの全てに対するものであることの認識可否をリーダライタ１側で判断することができる。
【００２６】
リーダライタ１は、ＩＣカード３ａ〜３ｃのように磁界２内に存在するＩＣカードの管理を、取得したＡＴＱＢコマンド７の識別コード１２を用いて行う。もし、ＩＣカード３ａとリーダライタ１との間でデータ通信を行おうとした場合、リーダライタ１はＩＣカード３ａに対してＡＴＴＲＩＢコマンド１３を送信し（図５参照）、ＩＣカード３ａからのＡＴＴＲＩＢレスポンスコマンド１４の受信によってデータ通信可能状態（活性化状態）に移行する（図２参照）。以降、ＩＣカード３ａとリーダライタ１との間でデータ通信を行う場合は、ＡＴＴＲＩＢコマンド１３に設定したカード識別子（ＣＩＤ）１５を用いて通信が行われる。ＩＣカード３ｂ、ＩＣカード３ｃも同様な手順により活性化状態に移行することができる。このとき各ＩＣカードに割り当てられるＣＩＤ１５は相互に異なる値となる。
【００２７】
次に、活性化状態においてリーダライタ１からＩＣカード３ａ〜３ｃに対して同一のデータを送信する場合の処理方法について、図７に示すシーケンス図を用いて説明する。ここで、ＩＣカード３ａのＣＩＤ１５は“１”、ＩＣカード３ｂのＣＩＤ１５は“２”、ＩＣカード３ｃのＣＩＤ１５は“３”とする。端末１７は３枚のＩＣカード３ａ〜３ｃで構成されたＩＣカード群１６に対して同一のデータを送信しようとする場合、端末１７からリーダライタ１にＣＩＤ１８を“１５”（予約情報番号）として送信データを送信する。リーダライタ１は端末１７からＣＩＤ１８が“１５”である送信データを受信した場合、活性化状態にあるＩＣカード群１６に対する送信データだと認識し、ＩＣカード群１６への送信処理を行う。送信処理は送信データの情報量によって２種類に分けられる。１つは、図７に示すように、送信データの情報量がＩブロックフレームで構築できる最大サイズを超えずに１つのＩブロックフレームで構築できる場合であり、もう１つは、図８に示すように、送信データの情報量がＩブロックフレームで構築できる最大サイズを超えて１つのＩブロックフレームで構築できない場合（複数のＩブロックフレームで構築できる場合）である。
【００２８】
１つのＩブロックフレームで構築できる場合は、リーダライタ１は、ＣＩＤ１８は“１５”、ブロックフレーム番号１９は“０”、連鎖情報２０は“０”、情報部２１は送信データとなるようＩブロックフレーム２２を構築して磁界２に送信し、ＩＣカード３ａ〜３ｃからの応答Ｉブロックフレーム２３ａ〜２３ｃの受信を待つ。応答Ｉブロックフレーム２３ａ〜２３ｃの受信は一定の間隔で区切られた時間を１４回カウントし、その間に受信される応答Ｉブロックフレーム２３ａ〜２３ｃからＣＩＤ１８と情報部２１を取り出し、それを応答データとして端末１７に送信する。もし、応答Ｉブロックフレーム２３ａ〜２３ｃの受信待ちの期間中に受信されないＣＩＤ１８のＩブロックフレームがある場合は、応答Ｉブロックフレーム２３ａ〜２３ｃの受信待ち終了後にＩブロックフレーム２２を再送し、再度応答Ｉブロックフレーム２３ａ〜２３ｃの受信待ちを行う。活性化状態にある全てのＩＣカード３ａ〜３ｃのＣＩＤ１５（“１”，“２”，“３”）の応答Ｉブロックフレーム２３ａ〜２３ｃを受信したら、送信処理完了となる。もし、Ｉブロックフレーム２２の再送を２回行っても受信されない応答Ｉブロックフレーム２３ａ〜２３ｃがある場合は、受信されないものとみなし強制的に送信処理を終了する。
【００２９】
一方、１つのＩブロックフレームで構築できない場合は、送信データを最大ブロックフレームサイズ毎に分割して複数のＩブロックフレーム２４、２５、２６として構築する。また、Ｉブロックフレーム２４の最大サイズはＩＣカード３ａ〜３ｃによっても異なる場合がある。このような場合は、ＩＣカード３ａの最大サイズ、ＩＣカード３ｂの最大サイズ、ＩＣカード３ｃの最大サイズの中で一番サイズの小さいものを最大サイズとして送信データを分割する。リーダライタ１は、最初のＩブロックフレーム２４のＣＩＤ１８は“１５”、ブロックフレーム番号１９は“０”、連鎖情報２０は“１”、情報部２１は分割した送信データの最初のデータとなるようＩブロックフレーム２４を構築して磁界２に送信し、ＩＣカード３ａ〜３ｃからのＲ（ＡＣＫ）ブロックフレーム２７ａ〜２７ｃの受信を待つ。Ｒ（ＡＣＫ）ブロックフレーム２７ａ〜２７ｃの受信は一定の間隔で区切られた時間を１４回カウントし、その間に受信されるＲ（ＡＣＫ）ブロックフレーム２７ａ〜２７ｃを取得する。もし、Ｒ（ＡＣＫ）ブロックフレーム２７ａ〜２７ｃの受信待ちの期間中に受信されないＣＩＤ１８のＲ（ＡＣＫ）ブロックフレーム２７ａ〜２７ｃがある場合は、Ｒ（ＡＣＫ）ブロックフレーム２７ａ〜２７ｃの受信待ち終了後にＩブロックフレーム２４を再送し、再度Ｒ（ＡＣＫ）ブロックフレーム２７ａ〜２７ｃの受信待ちを行う。活性化状態にある全てのＩＣカード３ａ〜３ｃのＣＩＤ１５（“１”，“２”，“３”）のＲ（ＡＣＫ）ブロックフレーム２７ａ〜２７ｃを受信したら、リーダライタ１は、次のＩブロックフレーム２５のＣＩＤ１８は“１５”、ブロックフレーム番号１９は“１”、連鎖情報２０は“１”、情報部２１は分割した送信データの次のデータとなるようＩブロックフレーム２５を構築して磁界２に送信し、Ｒ（ＡＣＫ）ブロックフレーム２８ａ〜２８ｃの受信待ちを行う。
【００３０】
以降、同様の処理を分割した送信データの最後のデータとなるまで繰り返し行う。分割した送信データの最後をＩブロックフレーム２６として送信する場合は、連鎖情報２０は“１”として磁界２に送信し、ＩＣカード３ａ〜３ｃからの応答Ｉブロックフレーム２９ａ〜２９ｃの受信を待つ。応答Ｉブロックフレーム２９ａ〜２９ｃの受信待ちの処理については、１つのＩブロックフレーム２２で構築できる場合と同様の処理を行う。活性化状態にある全てのＩＣカード３ａ〜３ｃのＣＩＤ１５（“１”，“２”，“３”）の応答Ｉブロックフレーム２９ａ〜２９ｃを受信したら、送信処理完了となる。もし、Ｉブロックフレーム２６の再送を２回行っても受信されない応答Ｉブロックフレーム２９ａ〜２９ｃがある場合は、受信されないものとみなし強制的に送信処理を終了する。
【００３１】
次に、ＩＣカード群１６の処理について説明する。ＩＣカード３ａ〜３ｃは、受信したＩブロックフレームのＣＩＤ１８が“１５”であるか否かを確認し、そうであれば、受信したＩブロックフレームの連鎖情報２０を確認し、その値に応じた処理を行う。連鎖情報２０が“０”の場合は、情報部２１から送信データを取得してそのデータに応じた処理を実行する。実行結果は、レスポンスコマンドとして応答Ｉブロックフレームに構築して磁界２に送信する。
【００３２】
連鎖情報２０が“１”の場合は、情報部２１は分割された送信データの一部と判断し、Ｒ（ＡＣＫ）ブロックフレームを磁界２に送信して次のＩブロックフレームの受信を待つ。この処理は、連鎖情報２０が“０”であるＩブロックフレームが受信されるまで繰り返し行われる。以降、連鎖情報２０が“０”であるＩブロックフレームを受信した場合は、分割された送信データの最後であると判断し、今まで受信したＩブロックフレームの情報部２１を連結し、１つの送信データとし、そのデータに応じた処理を実行する。実行結果は、レスポンスコマンドとして応答Ｉブロックフレームに構築して磁界２に送信する。
【００３３】
ここで、ＩＣカード３ａ〜３ｃがＲ（ＡＣＫ）ブロックフレーム、応答Ｉブロックフレームを同じタイミングで磁界２に送信した場合、磁界２で混信が発生し、リーダライタ１に対して正常に送信できなくなる。これを防止するために、送信タイミングは一定の間隔で区切られた時間とＣＩＤ１８との積の計算結果で表した時間のタイミングとする。例えば、ＩＣカード３ａでは、割り当てられたＣＩＤ１８は“１”であるため、送信タイミングは一定の間隔で区切られた最初の時間の間で送信を行い、ＩＣカード３ｂでは、割り当てられたＣＩＤ１８は“２”であるため、次の時間の間で送信を行い、ＩＣカード３ｃでは、割り当てられたＣＩＤ１８は“３”であるため、３回目の時間の間で送信を行うこととなる。
【００３４】
また、送信するＩブロックフレームについては、リーダライタ１の送信処理と同様に応答データの情報量によって２種類に分かれる。１つは、応答データの情報量がＩブロックフレームで構築できる最大サイズを超えずに１つのＩブロックフレームで構築できる場合であり、もう１つは、応答データの情報量がＩブロックフレームで構築できる最大サイズを超えて１つのＩブロックフレームとして構築できない場合（複数のＩブロックフレームで構築できる場合）である。
【００３５】
１つのＩブロックフレームで構築できる場合は、各ＩＣカードは、ＣＩＤ１８は割り当てられた番号、ブロックフレーム番号１９は前回送信したＩブロックフレームのブロックフレーム番号１９が“１”であれば“０”、“０”であれば“１”、連鎖情報２０は“０”、情報部２１は応答データとなるようＩブロックフレームを構築して磁界２に送信する。
【００３６】
１つのＩブロックフレームとして構築できない場合は、応答データを最大ブロックフレームサイズ毎に分割して複数のＩブロックフレームとして構築する。また、Ｉブロックフレームの最大サイズはＩＣカード３ａ〜３ｃによって異ならせてもよい。各ＩＣカードは、最初のＩブロックフレームのＣＩＤ１８は割り当てられた番号、ブロックフレーム番号１９は前回送信したＩブロックフレームのブロックフレーム番号１９が“１”であれば“０”、“０”であれば“１”、連鎖情報２０は“１”、情報部２１は分割した応答データの最初のデータとなるようＩブロックフレームを構築して磁界２に送信し、リーダライタ１からのＲ（ＡＣＫ）ブロックフレームの受信を待つ。このときＲ（ＡＣＫ）ブロックフレームではなくＲ（ＮＡＫ）ブロックフレームを受信した場合はＩブロックフレームを再送し、再度Ｒ（ＡＣＫ）ブロックフレームの受信待ちを行う。Ｒ（ＡＣＫ）ブロックフレームを受信したら次のＩブロックフレームとしてＣＩＤ１８は割り当てられた番号、ブロックフレーム番号１９は前回送信したＩブロックフレームのブロックフレーム番号１９が“１”であれば“０”、“０”であれば“１”、連鎖情報２０は“１”、情報部２１は分割した応答データの次のデータとなるようＩブロックフレームを構築して磁界２に送信し、Ｒ（ＡＣＫ）ブロックフレームの受信待ちを行う。
【００３７】
以降、同様の処理を分割した応答データの最後のデータとなるまで繰り返し行う。分割した応答データの最後をＩブロックフレームとして送信する場合は、連鎖情報２０は“０”として磁界２に送信する。
【００３８】
なお、ＩＣカードの枚数は“３枚”に限定されず、予約情報番号は“１５”に限定されないことは勿論である。
【産業上の利用可能性】
【００３９】
本発明は、時間をかけることなく複数のＩＣカードに対して同一のデータを送信することができ、データ伝送効率を向上させることができるといった効果を有し、リーダライタと複数のＩＣカードとの間でデータを送受信するデータ伝送システムに適用が可能である。
【図面の簡単な説明】
【００４０】
【図１】本発明の実施の形態に係るデータ伝送システムを示す構成図
【図２】本発明の実施の形態における衝突防止処理を説明するためのシーケンス図
【図３】本発明の実施の形態におけるＲＥＱＢコマンドを示すフレーム構成図
【図４】本発明の実施の形態におけるＡＴＱＢコマンドを示すフレーム構成図
【図５】本発明の実施の形態におけるＡＴＴＲＩＢコマンドを示すフレーム構成図
【図６】本発明の実施の形態におけるＩブロックフレームを示すフレーム構成図
【図７】本発明の実施の形態における１つのＩブロックフレームで構築できる場合の動作を説明するためのシーケンス図
【図８】本発明の実施の形態における複数のＩブロックフレームで構築できる場合の動作を説明するためのシーケンス図
【符号の説明】
【００４１】
１  リーダライタ
２  磁界
３ａ〜３ｃ  ＩＣカード
４  ＲＥＱＢコマンド
４ａ  ＷＵＰＢコマンド
５  誤り検出符号
６  応用分野識別子
７  ＡＴＱＢコマンド
８  ＡＤＣ
９  アプリケーションデータ
１０  スロット数
１１  タイムスロット可否パラメータ
１２  識別コード
１３  ＡＴＴＲＩＢコマンド
１４  ＡＴＴＲＩＢレスポンスコマンド
１５  ＣＩＤ
１６  ＩＣカード群
１７  端末
１８  ＣＩＤ
１９  ブロックフレーム番号
２０  連鎖情報
２１  情報部
２２、２４、２５、２６  Ｉブロックフレーム
２３ａ〜２３ｃ、２９ａ〜２９ｃ  応答Ｉブロックフレーム
２７ａ〜２７ｃ、２８ａ〜２８ｃ  Ｒ（ＡＣＫ）ブロックフレーム
【図１】
2005084873.tif 000003
【図２】
2005084873.tif 000004
【図３】
2005084873.tif 000005
【図４】
2005084873.tif 000006
【図５】
2005084873.tif 000007
【図６】
2005084873.tif 000008
【図７】
2005084873.tif 000009
【図８】
2005084873.tif 000010