(57)【要約】【課題】シリアルインターフェースにおいてコマンドコードを無くすことで、装置間で送受信されるデータのデータ長を短くし、データ転送速度を上げ、回路規模もしくはメモリサイズを小さくし、低消費電力化を行う。【解決手段】リーダライタ１１からのデータを受信した場合、ＲＦＩＤモジュール３２は、ＩＲＱ線４４で、割り込み信号をホストＣＰＵ３４に出す。ホストＣＰＵ３４は、割り込み信号を受信すると、ＣＬＫ線４１を介して、クロック信号を供給する。ＲＦＩＤモジュール３２は、クロック信号に載せて、ＤＡＴＡ線４２を介して、データ長を示すデータを送信する。ホストＣＰＵ３４は、受信したデータが示すデータ長以上に、受信したデータのデータ長がなったとき、データの受信に関わる処理を終了する。本発明は、リーダライタと通信を行うＩＣカードなどに適用できる。【選択図】図１
2010134672.tif 000002
【特許請求の範囲】
【請求項１】
リーダライタと通信を行う通信手段と、
前記通信手段を制御するモジュールと、
前記モジュールとデータの送受信を行う処理手段と、
前記通信手段により、前記リーダライタからのデータを受信したとき、前記モジュールが前記処理手段に対して割り込み信号を出力する割り込み信号出力手段と、
前記割り込み信号を受信したとき、前記処理手段から前記モジュールにクロック信号を出力するクロック信号出力手段と、
前記クロック信号に載せて、前記モジュールが前記処理手段に対してデータを出力する、または前記処理手段が前記モジュールに対してデータを出力するデータ出力手段と、
前記処理手段により前記データの送受信の方向を切り替える信号を出力する切り替え信号出力手段と
を備え、
前記モジュールは、前記割り込み信号を出力し、前記クロック信号を受信したとき、前記処理手段に送信するデータのデータ長を示すデータ長データを送信し、
前記処理手段は、前記データ長を示すデータ長データを受信した後、前記モジュールから前記データ出力手段により出力され、受信されたデータのデータ長をカウントし、そのカウント値が、前記データ長データが示すデータ長以上になったとき、前記モジュールからのデータの出力は終了したと判断する
情報処理装置。
【請求項２】
前記リーダライタからのデータはコマンドを含み、
前記モジュールは、前記通信手段によりリーダライタからデータを受信したとき、当該コマンドを解析し、
前記割り込み信号出力手段は、前記モジュールによるコマンドの解析結果に応じて前記処理手段に対して前記割り込み信号を出力する
請求項１に記載の情報処理装置。
【請求項３】
第１の装置からデータを受信したとき、所定のインタフェースで接続されている第２の装置に対して割り込み信号を送信する、前記インタフェースに含まれる第１の線と、
前記第２の装置からのクロック信号を受信する、前記インタフェースに含まれる第２の線と、
前記第２の装置との間で、データの授受を行う、前記インタフェースに含まれる第３の線と
を備える情報処理装置。
【請求項４】
前記第１の装置からのデータはコマンドを含み、
前記第１の装置からデータを受信したとき、当該コマンドを解析し、その解析結果に応じて前記第２の装置に対して前記割り込み信号を送信する
請求項３に記載の情報処理装置。
【請求項５】
前記第１の線を介して、前記第２の装置に対して、前記割り込み信号を送信した後、前記第２の線を介して、前記第２の装置から前記クロック信号を受信し、
前記クロック信号を受信した後、そのクロック信号に載せて、前記第３の線を介して前記第２の装置に送信するデータのデータ長を、前記第２の装置に前記第３の線を介して送信する
請求項３または請求項４に記載の情報処理装置。
【請求項６】
前記第２の装置に対してデータを送信するか、または前記第２の装置からのデータを受信するかを示す信号を前記第２の装置から受信する、前記インタフェースに含まれる第４の線をさらに備える
請求項３乃至請求項５のいずれかに記載の情報処理装置。
【請求項７】
前記第４の線を介して送信されてくる前記信号の切り替わりにより、前記第２の装置からデータが送信されてくることを検知し、または、前記第２の装置からのデータの送信が終了したことを検知する
請求項６に記載の情報処理装置。
【請求項８】
第１の装置と無線で通信し、第２の装置と有線で通信する情報処理装置の情報処理方法において、
前記第１の装置からデータを受信したとき、前記第２の装置に対して割り込み信号を、前記有線で送信し、
前記割り込み信号を受信した前記第２の装置からのクロック信号を前記有線で受信し、
前記第２の装置との間で、前記有線でデータの授受を行う
ステップを含む情報処理方法。
【請求項９】
第１の装置と無線で通信し、第２の装置と有線で通信する情報処理装置に、
前記第１の装置からデータを受信したとき、前記第２の装置に対して割り込み信号を、前記有線で送信し、
前記割り込み信号を受信した前記第２の装置からのクロック信号を前記有線で受信し、
前記第２の装置との間で、前記有線でデータの授受を行う
ステップを含む処理を実行させるコンピュータが読み取り可能なプログラム。
【請求項１０】
所定のインタフェースで接続されている第２の装置が第１の装置からデータを受信したとき、前記第２の装置から割り込み信号を受信する前記インタフェースに含まれる第１の線と、
前記第２の装置にクロック信号を送信する前記インタフェースに含まれる第２の線と、
前記第２の装置との間で、データの授受を行う、前記インタフェースに含まれる第３の線と
を備える情報処理装置。
【請求項１１】
前記第１の線を介して、前記第２の装置から前記割り込み信号を受信した後、前記第２の線を介して、前記第２の装置に前記クロック信号を送信し、
前記クロック信号を送信した後、そのクロック信号に載せて、前記第３の線を介して前記第２の装置から送信されてくるデータのデータ長を示すデータ長データを、前記第２の装置から前記第３の線を介して受信し、
前記データ長データを受信した後、その後に前記第２の装置から送信されてくるデータのデータ長をカウントし、そのカウント値が、受信した前記データ長データが示すデータ長以上になったとき、前記第２の装置からのデータの送信は終了したと判断する
請求項１０に記載の情報処理装置。
【請求項１２】
前記第２の装置に対してデータを送信するか、または前記第２の装置からのデータを受信するかを示す信号を前記第２の装置に送信する、前記インタフェースに含まれる第４の線をさらに備える
請求項１０または請求項１１に記載の情報処理装置。
【請求項１３】
前記第４の線を介して送信する前記信号の状態の切り替わりにより、前記第２の装置に対してデータを送信することを検知させ、または、前記第２の装置にデータの送信が終了したことを検知させる
請求項１２に記載の情報処理装置。
【請求項１４】
第１の装置と無線で通信する第２の装置と有線で通信する情報処理装置の情報処理方法において、
前記第１の装置から前記第２の装置がデータを受信したとき、前記第２の装置から割り込み信号を、前記有線で受信し、
前記割り込み信号を受信したとき、前記第２の装置にクロック信号を前記有線で送信し、
前記第２の装置との間で、前記有線でデータの授受を行う
ステップを含む情報処理方法。
【請求項１５】
第１の装置と無線で通信し、第２の装置と有線で通信する情報処理装置に、
前記第１の装置から前記第２の装置がデータを受信したとき、前記第２の装置から割り込み信号を、前記有線で受信し、
前記割り込み信号を受信したとき、前記第２の装置にクロック信号を前記有線で送信し、
前記第２の装置との間で、前記有線でデータの授受を行う
ステップを含む処理を実行させるコンピュータが読み取り可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置および方法、並びにプログラムに関し、特に、半二重通信を用いた好適な情報処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
装置間をシリアルインターフェースで接続し、そのシリアルインターフェースを介してデータの授受を行うことは一般的に行われている。（例えば、特許文献１参照）
【特許文献１】特開2001-290764号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
シリアルインターフェースを介してデータの授受を行う場合、コマンドデータの授受が必要であった。このコマンドデータのデータ長だけ、送受信しなくてはならないデータ長が長くなってしまい、データの転送速度に影響してしまう。また、コマンドデータを解析（デコード）するための回路またはプログラムが必要となる。この回路またはプログラムは、コマンドデータを授受する両方の装置で備える必要がある。よって、コマンドデータを授受する装置は、コマンド生成とデコードを行う回路またはプログラムを備える分だけ、回路規模またはメモリサイズが増大してしまい、装置の小型化と低消費電力化をはばむ一要因となっていた。
【０００４】
本発明は、このような状況に鑑みてなされたものであり、コマンドデータの授受を省略し、データ長を短くし、回路規模と消費電力を削減できるようにするものである。
【課題を解決するための手段】
【０００５】
本発明の一側面の第１の情報処理装置は、リーダライタと通信を行う通信手段と、前記通信手段を制御するモジュールと、前記モジュールとデータの送受信を行う処理手段と、前記通信手段により、前記リーダライタからのデータを受信したとき、前記モジュールが前記処理手段に対して割り込み信号を出力する割り込み信号出力手段と、前記割り込み信号を受信したとき、前記処理手段から前記モジュールにクロック信号を出力するクロック信号出力手段と、前記クロック信号に載せて、前記モジュールが前記処理手段に対してデータを出力する、または前記処理手段が前記モジュールに対してデータを出力するデータ出力手段と、前記処理手段により前記データの送受信の方向を切り替える信号を出力する切り替え信号出力手段とを備え、前記モジュールは、前記割り込み信号を出力し、前記クロック信号を受信したとき、前記処理手段に送信するデータのデータ長を示すデータ長データを送信し、前記処理手段は、前記データ長を示すデータ長データを受信した後、前記モジュールから前記データ出力手段により出力され、受信されたデータのデータ長をカウントし、そのカウント値が、前記データ長データが示すデータ長以上になったとき、前記モジュールからのデータの出力は終了したと判断する。
【０００６】
本発明の一側面の第１の情報処理装置においては、無線で他の装置からデータを受信したとき、有線で接続されている装置に対して、割り込み信号が出される。割り込み信号を受信した側の装置は、クロック信号を供給する。その後、データ長を受信した側は、受信されたデータのデータ長が、そのデータ長になった時点で、データの受信が終了したと判断される。
【０００７】
前記リーダライタからのデータはコマンドを含み、前記モジュールは、前記通信手段によりリーダライタからデータを受信したとき、当該コマンドを解析し、前記割り込み信号出力手段は、前記モジュールによるコマンドの解析結果に応じて前記処理手段に対して前記割り込み信号を出力するようにすることができる。
【０００８】
本発明の一側面の第２の情報処理装置は、第１の装置からデータを受信したとき、所定のインタフェースで接続されている第２の装置に対して割り込み信号を送信する、前記インタフェースに含まれる第１の線と、前記第２の装置からのクロック信号を受信する、前記インタフェースに含まれる第２の線と、前記第２の装置との間で、データの授受を行う、前記インタフェースに含まれる第３の線とを備える。
【０００９】
前記第１の装置からのデータはコマンドを含み、前記第１の装置からデータを受信したとき、当該コマンドを解析し、その解析結果に応じて前記第２の装置に対して前記割り込み信号を送信するようにすることができる。
【００１０】
前記第１の線を介して、前記第２の装置に対して、前記割り込み信号を送信した後、前記第２の線を介して、前記第２の装置から前記クロック信号を受信し、前記クロック信号を受信した後、そのクロック信号に載せて、前記第３の線を介して前記第２の装置に送信するデータのデータ長を、前記第２の装置に前記第３の線を介して送信するようにすることができる。
【００１１】
前記第２の装置に対してデータを送信するか、または前記第２の装置からのデータを受信するかを示す信号を受信する、前記インタフェースに含まれる第４の線をさらに備えるようにすることができる。
【００１２】
前記第４の線を介して送信されてくる前記信号の状態の切り替わりにより、前記第２の装置からデータが送信されてくることを検知し、前記第２の装置からのデータの送信が終了したことを検知するようにすることができる。
【００１３】
本発明の一側面の第１の情報処理方法は、第１の装置と無線で通信し、第２の装置と有線で通信する情報処理装置の情報処理方法において、前記第１の装置からデータを受信したとき、前記第２の装置に対して割り込み信号を、前記有線で送信し、前記割り込み信号を受信したとき、前記第２の装置からのクロック信号を前記有線で受信し、前記第２の装置との間で、前記有線でデータの授受を行うステップを含む。
【００１４】
本発明の一側面の第１のプログラムは、第１の装置と無線で通信し、第２の装置と有線で通信する情報処理装置に、前記第１の装置からデータを受信したとき、前記第２の装置に対して割り込み信号を、前記有線で送信し、前記割り込み信号を受信したとき、前記第２の装置からのクロック信号を前記有線で受信し、前記第２の装置との間で、前記有線でデータの授受を行うステップを含む処理を実行させるコンピュータが読み取り可能なプログラム。
【００１５】
本発明の一側面の第２の情報処理装置および第１の情報処理方法、並びに第１のプログラムにおいては、無線で他の装置からデータが受信されたとき、有線で割り込み信号が送信され、その応答として、クロック信号が受信される。
【００１６】
本発明の一側面の第２の情報処理装置は、所定のインタフェースで接続されている第２の装置が第１の装置からデータを受信したとき、前記第２の装置から割り込み信号を受信する前記インタフェースに含まれる第１の線と、前記第２の装置にクロック信号を送信する前記インタフェースに含まれる第２の線と、前記第２の装置との間で、データの授受を行う、前記インタフェースに含まれる第３の線とを備える。
【００１７】
前記第１の線を介して、前記第２の装置から前記割り込み信号を受信した後、前記第２の線を介して、前記第２の装置に前記クロック信号を送信し、前記クロック信号を送信した後、そのクロック信号に載せて、前記第３の線を介して前記第２の装置から送信されてくるデータのデータ長を示すデータ長データを、前記第２の装置から前記第３の線を介して受信し、前記データ長データを受信した後、その後に前記第２の装置から送信されてくるデータのデータ長をカウントし、そのカウント値が、受信した前記データ長データが示すデータ長以上になったとき、前記第２の装置からのデータの送信は終了したと判断するようにすることができる。
【００１８】
前記第２の装置に対してデータを送信するか、または前記第２の装置からのデータを受信するかを示す信号を前記第２の装置に送信する、前記インタフェースに含まれる第４の線をさらに備えるようにすることができる。
【００１９】
前記第４の線を介して送信する前記信号の状態の切り替わりにより、前記第２の装置に対してデータを送信することを検知させ、または、前記第２の装置にデータの送信が終了したことを検知させるようにすることができる。
【００２０】
本発明の一側面の第２の情報処理方法は、第１の装置と無線で通信する第２の装置と有線で通信する情報処理装置の情報処理方法において、前記第１の装置から前記第２の装置がデータを受信したとき、前記第２の装置から割り込み信号を、前記有線で受信し、前記割り込み信号を受信したとき、前記第２の装置にクロック信号を前記有線で送信し、前記第２の装置との間で、前記有線でデータの授受を行うステップを含む。
【００２１】
本発明の一側面の第２のプログラムは、第１の装置と無線で通信し、第２の装置と有線で通信する情報処理装置に、前記第１の装置から前記第２の装置がデータを受信したとき、前記第２の装置から割り込み信号を、前記有線で受信し、前記割り込み信号を受信したとき、前記第２の装置にクロック信号を前記有線で送信し、前記第２の装置との間で、前記有線でデータの授受を行うステップを含む処理を実行させるコンピュータが読み取り可能なプログラム。
【００２２】
本発明の一側面の第３の情報処理装置および第２の情報処理方法、並びに第２のプログラムにおいては、無線で他の装置からデータが受信されたとき、有線で接続されている装置からの割り込み信号が受信され、その応答として、クロック信号が送信される。
【発明の効果】
【００２３】
本発明の一側面によれば、接続された装置間で、データの授受を行う際、コマンドデータの授受を省略することが可能となる。また、コマンドデータの授受を省略することで、データ長を短くし、コマンドデータの作成、解析を行う回路またはプログラムを削減できるようになり、同時に消費電力も削減できるようになる。
【発明を実施するための最良の形態】
【００２４】
以下に、本発明の実施の形態について図面を参照して説明する。
【００２５】
［システムの構成について］
図１は、本発明を適用したシステムの一実施の形態の構成を示す図である。図1に示したシステムは、リーダライタ１１、ＲＦＩＤ内蔵機器１２から構成されている。ＲＦＩＤは、Radio Frequency Identificationの略である。ＲＦＩＤによれば、ＩＤ情報を埋め込んだタグから、電磁界や電波などを用いた近距離の無線通信によって情報をやりとりすることができる。
【００２６】
リーダライタ１１は、ＲＦアンテナ２１を備え、ＲＦＩＤ内蔵機器１２は、ＲＦアンテナ３１を備える。このＲＦアンテナ２１とＲＦアンテナ３１を用いて、リーダライタ１１とＲＦＩＤ内蔵機器１２は、通信を行えるように構成されている。
【００２７】
ＲＦＩＤ内蔵機器１２は、ＲＦＩＤモジュール３２とホストＣＰＵ（Central Processing Unit）３４を含む構成とされる。ＲＦＩＤモジュール３２は、ＲＦアンテナ３１を介してのリーダライタ１１との通信を制御する。また、ＲＦＩＤモジュール３２は、ホストＣＰＵ３４と通信を行う。またＲＦＩＤモジュール３２は、ＲＡＭ（Random Access Memory）、レジスタ、不揮発性メモリ等の記憶部３３を備え、その記憶部３３に、リーダライタ１１からのデータや、ホストＣＰＵ３４からのデータを一旦記憶する。
【００２８】
ＲＦＩＤモジュール３２とホストＣＰＵ３４は、有線で接続されており、その線には、４本の線が含まれる。まずホストＣＰＵ３４からＲＦＩＤモジュール３２へクロック（clock）信号を供給するＣＬＫ線４１、ＲＦＩＤモジュール３２とホストＣＰＵ３４とデータの授受を行う双方向のＤＡＴＡ線４２が含まれる。そして、ホストＣＰＵ３２からＲＦＩＤモジュール３２に、データ転送の方向を示す指示を出すＳＥＬ線４３、ＲＦＩＤモジュール３２からホストＣＰＵ３２へ、割り込みを示す指示を出すＩＲＱ線４４が含まれる。
【００２９】
なお、図１に示したように、ＲＦＩＤモジュール３２とホストＣＰＵ３４は、ＲＦＩＤ内蔵機器１２にともに内蔵されている構成とすることもできるし、別々の構成とすることも可能である。例えば、ＲＦＩＤモジュール３２とホストＣＰＵ３４は、所定のインタフェースで接続されるように構成され、かつ、ホストＣＰＵ３４を備える装置に対して、ＲＦＩＤモジュール３２が着脱自在に構成される。
【００３０】
このように、別体で構成することで、例えば、ホストＣＰＵ３４を備える装置自体は、リーダライタ１１と通信する機能を有していなくても、ＲＦＩＤモジュール３２が装着されることで、リーダライタ１１と通信が行える状態にすることができる。このようなことが可能となることで、例えば、ホストＣＰＵ３４を備える装置側で蓄積したデータを、必要に応じて、ＲＦＩＤモジュール３２を装着し、リーダライタ１１に供給するといったことが可能となる。
【００３１】
以下の説明においては、図１に示したように、ＲＦＩＤモジュール３２とホストＣＰＵ３４が内蔵されているＲＦＩＤ内蔵機器１２を例に挙げて説明を続ける。
【００３２】
［データの授受に関わる処理について］
図１に示したシステムにおいて、リーダライタ１１とＲＦＩＤ内蔵機器１２は、無線により通信を行い、ＲＦＩＤモジュール３２とホストＣＰＵ３４は、有線により通信を行う。通信の一例について、図２を参照して説明する。図２を参照して、通信に関わる処理について簡便に説明し、その後、図４乃至図７の図面を参照し詳細に説明する。
【００３３】
ステップＳ１１において、ホストＣＰＵ３４からＲＦＩＤモジュール３２に対してデータが送信される。このデータは、例えば、イニシャル（Initial）データである。このデータの送信は、データを所定の単位で分割し、複数回に分けて行われる。ＲＦＩＤモジュール３２は、ホストＣＰＵ３４からのデータを、ステップＳ３１において複数回に分けて受信する。この送信は、ＤＡＴＡ線４２にデータが載せられて行われる。また、この送信は、ホストＣＰＵ３４側の準備ができ次第、開始される。
【００３４】
ホストＣＰＵ３４は、送信したいデータを送信し終わった時点で、ＳＥＬ線４３で、データの送信完了通知をＲＦＩＤモジュール３２に出す。ＲＦＩＤモジュール３２は、ステップＳ３２において、ホストＣＰＵ３４からのデータの送信完了通知を受信する。このとき、ＲＦＩＤモジュール３２は、ＳＥＬ線４３により送信されてくるＳＥＬ信号の立ち上がりを検出する。このようにして、ホストＣＰＵ３４からＲＦＩＤモジュール３２へのデータの送信が行われる。
【００３５】
リーダライタ１１は、ステップＳ６１において、ポーリングリクエストを出す。リーダライタ１１の基本的な動作として、ポーリングし、その結果、近傍にデータの通信を行える装置、この場合、ＲＦＩＤ内蔵機器１２が存在していることを検知すると、その検知した装置と通信を開始する。
【００３６】
ステップＳ３３において、ＲＦＩＤ内蔵機器１２のＲＦＩＤモジュール３２が、リーダライタ１１からのポーリングリクエストを受信すると、ステップＳ３４において、ポーリングレスポンスを出す。ステップＳ６２において、リーダライタ１１は、そのポーリングレスポンスを受信すると、ステップＳ６３において、コマンドリクエストを出す。このコマンドリクエストは、ステップＳ３５において、ＲＦＩＤモジュール３２に受信される。
【００３７】
ＲＦＩＤモジュール３２は、コマンドリクエストを受信すると、ＲＦＩＤモジュール３２は、受信したコマンドリクエストから、LengthとDATA等を含む必要な部分を記憶部３３に記憶する。ここで、Lengthは、DATAのデータ長を表し、DATAは、データ本体を表すとする。
【００３８】
また、ステップＳ３６において、データ受信通知を、ＩＲＱ線４４でホストＣＰＵ３４に出す。すなわち、ＲＦＩＤモジュール３２は、ホストＣＰＵ３４に割り込み信号を出す。その後、ＲＦＩＤモジュール３２は、ステップＳ３７において、ホストＣＰＵ３４の準備ができ次第、ホストＣＰＵからＣＬＫ線４１を介して供給されるクロックに同期して、LengthとDATA等を、記憶部３３から読み出し、所定の単位のデータに分割し、複数回に分けて、ＤＡＴＡ線４２を介してホストＣＰＵ３４に対して転送する。
【００３９】
ホストＣＰＵ３４は、ステップＳ１４において、複数回、ＲＦＩＤモジュール３２から転送されてくるLengthとDATA等を受信する。そして、その転送が終了する。
【００４０】
ここで、図３を参照し、ステップＳ６３において、リーダライタ１１から送信されるコマンドリクエスト（ステップＳ３５において、ＲＦＩＤモジュール３２に受信されるコマンドリクエスト）と、ステップＳ３７において、ＲＦＩＤモジュール３２からホストＣＰＵ３４に送信されるデータ（ステップＳ１４において、ホストＣＰＵ３４がＲＦＩＤモジュール３２から受信するデータ）について説明を加える。
【００４１】
コマンドリクエスト７１は、“Length”を示すデータ７２、コマンドコードなどを含むデータ７３、“DATA”本体であるデータ７４、およびＣＲＣ（Cyclic Redundancy Checking）などを含むデータ７５を含む構成とされている。
【００４２】
このようなコマンドリクエスト７１が、リーダライタ１１とＲＦＩＤモジュール３２との間で授受される。このようなコマンドリクエスト７１を受信したＲＦＩＤモジュール３２は、データ７３、すなわち、コマンドコードなどが含まれるデータ部分を解析する。コマンドコードを解析した結果、ホストＣＰＵ３４にデータ７４（ＤＡＴＡ）を送信する必要があると判断された場合、ＲＦＩＤモジュール３２は、ホストＣＰＵ３４に、図３の２行目に示すようなデータを送信する。
【００４３】
すなわち、ＲＦＩＤモジュール３２からホストＣＰＵ３４に送信されるのは、データ７２とデータ７４である。上述したように、ステップ３７において、まず始めに、ＲＦＩＤモジュール３２から、ホストＣＰＵ３４に対して、データ７４のデータ長を表す“Length”というデータ７２が送信される。その後、データの本体であるデータ７４が送信される。
【００４４】
このように、リーダライタ１１から送信されるデータは、コマンドを含むデータである。そして、ＲＦＩＤモジュール３２は、受信したデータに含まれるコマンドを解析し、その解析結果に応じて、ホストＣＰＵ３４に、データ本体を送信（転送）する。よって、コマンドを解析した結果、ホストＣＰＵ３４に転送する必要がないと判断された場合には、転送されない場合もある。このようにすることで、ホストＣＰＵ３４は、リーダライタ１１からのコマンドリクエストに含まれるコマンドを解析する必要がなくなり、その解析に必要な回路やプログラムを削減することが可能となる。
【００４５】
また、転送されるとき、LengthとDATAだけが送信されるため、転送される全データのデータ長を短くすることができ、仮に、転送レートが低い通信路であっても、データの授受にかかる時間などを短くすることができる。また、後述するように、“Length”のデータ７２を送受信することにより、ＲＦＩＤモジュール３２からホストＣＰＵ３４に対してコマンドなどを送信しなくてよくなり、その分、転送効率を向上させることが可能となる。
【００４６】
図２の説明に戻り、コマンドレスポンスに対するＲＦＩＤモジュール３２への返答をホストＣＰＵ３４から出す必要がある場合、ホストＣＰＵ３４は、ＳＥＬ線４３のＳＥＬ信号をＨ（High）からＬ（Lo）に切り替えることで、ＤＡＴＡ線４２の転送方向をホストＣＰＵ３４からＲＦＩＤモジュール３２の方向に切り替える。
【００４７】
そして、ステップＳ１５において、ホストＣＰＵ３４からＲＦＩＤモジュール３２へのデータの送信が行われる。ホストＣＰＵ３４は、ホストＣＰＵ３４の準備ができ次第、ホストＣＰＵからＣＬＫ線４１を介して供給されるクロックに同期して、複数回にわたり、ＲＦＩＤモジュール３２に対して、ＤＡＴＡ線４２を介してデータを送信する。このデータは、ステップＳ３８において、ＲＦＩＤモジュール３２により受信される。ＲＦＩＤモジュール３２は、必要に応じ、受信したデータを記憶部３３に記憶する。
【００４８】
そして、ホストＣＰＵ３４は、データの送信が終了した場合、ＳＥＬ線４３で、ＳＥＬ信号をＬ（Lo）からＨ（High）に切り替えることで、データの送信完了通知をＲＦＩＤモジュール３２に出す。ＲＦＩＤモジュール３２は、ステップＳ３９において、ホストＣＰＵ３４からのデータの送信完了通知を受信する。このとき、ＲＦＩＤモジュール３２は、ＳＥＬ線４３により送信されてくるＳＥＬ信号の立ち上がりを検出する。このようにして、ホストＣＰＵ３４からＲＦＩＤモジュール３２へのデータの送信が行われる。
【００４９】
ＲＦＩＤモジュール３２は、送信完了通知を受信すると、ステップＳ４０において、記憶部３３に記憶されているデータを読み出し、必要な情報を付加して、リーダライタ１１に対して、コマンドレスポンス（読み出されたデータ）を出す。このＲＦＩＤモジュール３２からのコマンドレスポンスは、ステップＳ６４において、リーダライタ１１により受信される。
【００５０】
ここで、再度図３を参照し、ステップＳ１５において、ホストＣＰＵ３４からＲＦＩＤモジュール３２に送信されるデータ（ステップＳ３８において、ＲＦＩＤモジュール３２がホストＣＰＵ３４から受信するデータ）と、ステップＳ４０において、ＲＦＩＤモジュール３２からリーダライタ１１に送信されるコマンドレスポンス（ステップＳ６４において、リーダライタ１１がＲＦＩＤモジュール３２から受信するコマンドレスポンス）について説明を加える。
【００５１】
図３の３行目に示したように、ホストＣＰＵ３４が、ＲＦＩＤモジュール３２に対して送信したいＤＡＴＡが、データ８１であったとする。このデータ８１は、ホストＣＰＵ３４が、リーダライタ１１に対してコマンドレスポンスとして送信したい内容が記述されたデータである。
【００５２】
このようなデータ８１を受信したＲＦＩＤモジュール３２は、図３の４行目に示したようなコマンドレスポンス８２を生成して、リーダライタ１１に対して送信する。すなわちコマンドレスポンス８２は、“Length”を示すデータ８３、コマンドコードなどを含むデータ８４、“DATA”本体であるデータ８１、およびＣＲＣ（Cyclic Redundancy Checking）などを含むデータ８５を含む構成とされている。
【００５３】
すなわち、ＲＦＩＤモジュール３２は、ホストＣＰＵ３４からのデータ８１に対して、そのデータ８１のデータ長を表す“Length”というデータ８３、リーダライタ１１に対して処理内容を指示するコマンドコードなどを含むデータ８４、および、ＣＲＣなどを含むデータ８５を付加することでコマンドレスポンス８２を生成する。このようなコマンドレスポンス８２が、リーダライタ１１とＲＦＩＤモジュール３２との間で授受される。
【００５４】
なお、“Length”は、データ８１に含まれていても良い。すなわち、ホストＣＰＵ３４が、データ８１を供給するとき、“Length”のデータも、データ８１に含めて、ＲＦＩＤモジュール３２に供給するようにしてもよい。このようにした場合、データ８１に含まれる“Length”のデータがＲＦＩＤモジュール３２で抽出されて、データ８３として、コマンドレスポンス８２に供給されるようにしても良い。
【００５５】
このように、ホストＣＰＵ３４からのデータ８１に対して、ＲＦＩＤモジュール３２が、コマンドコードなどを付加するため、ホストＣＰＵ３４自体は、リーダライタ１１に対するコマンドを認識しておく必要がなく、そのために必要な回路やメモリ、そしてプログラムなどを削減することが可能となる。
【００５６】
また、ホストＣＰＵ３４からＲＦＩＤモジュール３２に送信されるデータは、データ８１だけなので、送信される全データのデータ長を短くすることができ、仮に、転送レートが低い通信路であっても、データの授受にかかる時間などを短くすることができる。
【００５７】
また、リーダライタ１１とＲＦＩＤモジュール３２とは、無線により通信が行われるため、ＣＲＣなどのデータ７５（８５）が付加されたデータが送受信されることで、比較的通信が不安定な状況であっても、データが正確に授受されるように構成されている。この無線通信に対して、ＲＦＩＤモジュール３２とホストＣＰＵ３４とは、有線により通信が行われるため、比較的通信は不安定ではなく、ＣＲＣなどのデータが付加されたデータを送受信することなく通信が行われるように構成されている。このように通信にメリハリを付けることで、非接触で通信が行われるようなシステムのように、接触している間という、比較的短い時間内でデータの授受を完了しなくてはならないシステムであっても、データの授受を確実に行い、処理することが可能となる。
【００５８】
このように、リーダライタ１１とＲＦＩＤ内蔵機器１２との通信が行われる。また、このように、ＲＦＩＤモジュール３２とホストＣＰＵ３４との通信が行われる。さらにＲＦＩＤモジュール３２とホストＣＰＵ３４との通信について説明を加える。
【００５９】
ＲＦＩＤモジュール３２とホストＣＰＵ３４との通信には、次の４つのパターンが考えられる。すなわち、第１のパターンとして、ＲＦＩＤモジュール３２からホストＣＰＵ３４にデータを送信し、終了するパターンがある。第２のパターンとして、ホストＣＰＵ３４からＲＦＩＤモジュール３２にデータを送信し、終了するパターンがある。
【００６０】
第３のパターンとして、ＲＦＩＤモジュール３２からホストＣＰＵ３４にデータを送信し、その後、ホストＣＰＵ３４からＲＦＩＤモジュール３２へデータを送信して終了するパターンがある。そして、ホストＣＰＵ３４からＲＦＩＤモジュール３２へデータを送信し、その後、ＲＦＩＤモジュール３２からホストＣＰＵ３４にデータを送信して終了するパターンがある。以下に、このようなパターン毎に説明を加える。
【００６１】
［第１のパターンについて］
図４を参照し、第１のパターン、すなわち、ＲＦＩＤモジュール３２からホストＣＰＵ３４にデータを送信し、終了するときのＲＦＩＤモジュール３２とホストＣＰＵ３４との通信に関わる処理について説明する。この通信は、例えば、リーダライタ１１からのコマンドリクエストを受信したときに行われる。
【００６２】
時刻ｔ１の時点で、ＲＦＩＤモジュール３２が、例えば、リーダライタ１１からのコマンドリクエストを受信すると、ＩＲＱ線４４で、ＩＲＱ信号をホストＣＰＵ３４に対して通知する。このように、ＲＦＩＤモジュール３２は、ホストＣＰＵ３４に供給するデータがあるときに、ＩＲＱ信号（割り込み信号）を、ホストＣＰＵ３４に対して、ＩＲＱ線４４を介して出す。
【００６３】
ホストＣＰＵ３４は、ＩＲＱ信号を受信すると、時刻ｔ２において、データを受信する準備ができ次第、ＣＬＫ線４１で、クロック信号を、ＲＦＩＤモジュール３２に対して供給する。クロック信号を、ＲＦＩＤモジュール３２が受信すると、そのクロックにデータを載せて、ＲＦＩＤモジュール３２は、データを送信する。
【００６４】
ＲＦＩＤモジュール３２からホストＣＰＵ３４に一番始めに出されるデータは、データ長を示す“Length”である。この“Length”の後に、データ、例えば、リーダライタ１１からのコマンドが転送される。よって、この“Length”は、この“Length”の後に転送（送信）されるデータのデータ長を示す情報である。
【００６５】
ホストＣＰＵ３４は、この“Length”を受信することで、転送されてくるデータ長を把握することができる。そして、ホストＣＰＵ３４は、転送されてくるデータ長を把握することで、データの転送が終了したか否かを判断することが可能となる。すなわち、ホストＣＰＵ３４は、“Length”を受信した後、転送されてきたデータ長（受信したデータ長）のカウントを開始する。そして、ホストＣＰＵ３４は、そのカウントしているカウント値と、“Length”が示すデータ長が一致、または、超えた時点で、データの転送は終了したことを検知する。
【００６６】
このように、データの転送の終了を検知することで、ＲＦＩＤモジュール３２からホストＣＰＵ３４に対して、データの転送を終了したことを示すコマンドを送信しなくても良い。よって、そのようなコマンドを送信する分のデータ長を削減することができる。また、そのようなコマンドを作成、解析するための回路またはプログラムをもうける必要がなくなるため、回路規模もしくはメモリサイズの縮小をはかることが可能となり、低消費電力化も実現できる。
【００６７】
このように、ＲＦＩＤモジュール３２からホストＣＰＵ３４に対してデータが送信されるときには、ＳＥＬ線４３で通信される信号は、Ｈ（High）の状態が維持される。ＳＥＬ線４３の信号は、ＨまたはＬ（Low）の状態にある。ＳＥＬ線４３の信号が、Ｈの状態のときには、ＲＦＩＤモジュール３２からホストＣＰＵ３４にデータが送信される状態であることを意味する。またＳＥＬ線４３の信号が、Ｌの状態のときには、ホストＣＰＵ３４からＲＦＩＤモジュール３２にデータが送信される状態であることを意味する。
【００６８】
すなわち、ＳＥＬ線４３の信号は、データの送信の向きを示す。そして、ＲＦＩＤモジュール３２とホストＣＰＵ３４との間の通信は、ＳＥＬ線４３の信号の状態が切り替えられることで、データの送信の向きが変更されるように制御される。なおここでは、ＳＥＬ線４３がＨの状態のとき、ＲＦＩＤモジュール３２からホストＣＰＵ３４にデータが送信され、Ｌの状態のとき、ホストＣＰＵ３４からＲＦＩＤモジュール３２にデータが送信されるとして説明を続けるが、逆の設定、すなわち、ＳＥＬ線４３がＨの状態のとき、ホストＣＰＵ３４からＲＦＩＤモジュール３２にデータが送信され、Ｌの状態のとき、ＲＦＩＤモジュール３２からホストＣＰＵ３４にデータが送信されるという設定でも良い。
【００６９】
［第２のパターンについて］
次に第２のパターンのとき通信について、図５を参照して説明を加える。第２のパターンは、ホストＣＰＵ３４からＲＦＩＤモジュール３２にデータを送信し、終了するパターンである。
【００７０】
ホストＣＰＵ３４は、時刻ｔ１において、ＲＦＩＤモジュール３２にデータの送信を開始したい場合、ＳＥＬ線４３の信号の状態を、ＨからＬの状態に切り替える。なお、ここでは、ＳＥＬ線４３は、通常（待機状態のとき）、Ｈの状態にされている。これは、Ｈの状態は、ＲＦＩＤモジュール３２からホストＣＰＵ３４に対してデータが送信される状態であり、ＲＦＩＤモジュール３２からの割り込み信号（ＩＲＱ信号）を、いつでも受信できる状態に維持しておくためである。
【００７１】
ホストＣＰＵ３４により、ＳＥＬ線４３の信号の状態が、ＨからＬに切り替えられ、その切り替えをＲＦＩＤモジュール３２が検知することで、ＲＦＩＤモジュール３２は、ホストＣＰＵ３４からデータが送信されてくることを検知する。そして、ＲＦＩＤモジュール３２は、ホストＣＰＵ３４からのデータを受信できる状態に移行する。
【００７２】
ホストＣＰＵ３４は、ＳＥＬ線４３の信号の状態をＨからＬに切り替えた後、準備ができ次第、ＣＬＫ線４１で、クロック信号をＲＦＩＤモジュール３２に供給し、そのクロック信号に載せて、ＤＡＴＡ線４２を介して、データを送信する。ホストＣＰＵ３４からＲＦＩＤモジュール３２にデータが送信されるときには、始めからデータ自体が送信され、“Length”といったデータ長を示すデータは送信されない。これは、ＲＦＩＤモジュール３２では、ホストＣＰＵ３４からのデータの送信の終了を判断する必要がないからである。
【００７３】
これは、図５に示すように、ホストＣＰＵ３４は、データ長をカウントしてデータ送信しており、データの送信が終了した時点（時刻ｔ２）で、ＳＥＬ線４３の信号の状態を、ＬからＨの状態に切り替えるためである。ＳＥＬ線４３の信号の状態が、ＬからＨの状態に切り替えられ、その切り替えをＲＦＩＤモジュール３２が検知することで、ＲＦＩＤモジュール３２は、ホストＣＰＵ３４がデータの送信を終了したことを検知できる。
【００７４】
このように、ホストＣＰＵ３４からＲＦＩＤモジュール３２にデータが送信されるときには、“Length”といったデータを送受信する必要がなく、その分、送受信するデータ長を削減することが可能となる。また、ＲＦＩＤモジュール３２は、データの送信の開始時や終了時に、通常の通信においては送受信されるコマンドを、本発明によれば送受信する必要がなくなる。このことにより、ＲＦＩＤモジュール３２は、ホストＣＰＵ３４からのコマンドを作成、解析するための回路またはプログラムを必要とせず、回路規模もしくはメモリサイズが小さくなり、低消費電力化も実現できる。
【００７５】
［第３のパターンについて］
次に第３のパターンのとき通信について、図６を参照して説明を加える。第３のパターンは、ＲＦＩＤモジュール３２からホストＣＰＵ３４にデータが送信され、その後、ホストＣＰＵ３４からＲＦＩＤモジュール３２へデータが送信されて終了するパターンである。この第３のパターンの通信は、第１のパターンの通信から第２のパターンの通信が連続的に行われる通信である。また、この通信は、例えば、リーダライタ１１からコマンドリクエストを受信し、そのコマンドに対してコマンドレスポンスを返答するときなどに行われる。
【００７６】
例えば、時刻ｔ１において、リーダライタ１１からコマンドリクエストを受信すると、ＲＦＩＤモジュール３２は、受信したコマンドリクエストから、LengthとDATA等を含む必要な部分を記憶部３３に記憶する。また、ＲＦＩＤモジュール３２は、ＩＲＱ線４４を介して、ＩＲＱ信号をホストＣＰＵ３４に対して送信する。ホストＣＰＵ３４は、ＩＲＱ信号を受信すると、時刻ｔ２において、データを受信する準備ができ次第、ＣＬＫ線４１で、クロック信号を、ＲＦＩＤモジュール３２に対して出す。クロック信号を、ＲＦＩＤモジュール３２が受信すると、そのクロックにデータを載せて、ＲＦＩＤモジュール３２は、データ長が記載された“Length”というデータをホストＣＰＵ３４に対して送信する。
【００７７】
ホストＣＰＵ３４は、この“Length”を受信すると、転送されてくるデータ長を把握し、その後転送されてくるデータ長（受信したデータ長）のカウントを開始する。そして、ホストＣＰＵ３４は、そのカウントしているカウント値と、“Length”が示すデータ長が一致した時点で、データの転送は終了したことを検知する。この検知に対応し、時刻ｔ３において、ホストＣＰＵ３４は、ＳＥＬ線４３の信号の状態を、ＨからＬに切り替える。
【００７８】
そして、ホストＣＰＵ３４は、ＳＥＬ線４３の信号の状態をＨからＬに切り替えた後、準備ができ次第、ＣＬＫ線４１で、クロック信号をＲＦＩＤモジュール３２に供給し、そのクロック信号に載せて、ＤＡＴＡ線４２を介して、データを送信する。例えば、ホストＣＰＵ３４は、ＲＦＩＤモジュール３２から転送されてきたリーダライタ１１からのコマンドに対する返答（データ）を準備し、送信できる状態になったら、クロック信号に載せて、ＤＡＴＡ線４２を介して、その返答（データ）を送信する。
【００７９】
時刻ｔ４において、ホストＣＰＵ３４は、データの送信を終了するとき、ＳＥＬ線４３の信号の状態をＬからＨの状態に戻す。このことによりＲＦＩＤモジュール３２は、ホストＣＰＵ３４からのデータの送信が終了したことを検知する。この後、必要に応じ、ＲＦＩＤモジュール３２は、リーダライタ１１に対して、ホストＣＰＵ３４からのデータ（コマンドに対する返答）に必要な情報を付加してコマンドレスポンスを送信する。
【００８０】
［第４のパターンについて］
次に第４のパターンのとき通信について、図７を参照して説明を加える。第４のパターンは、ホストＣＰＵ３４からＲＦＩＤモジュール３２へデータが送信され、その後、ＲＦＩＤモジュール３２からホストＣＰＵ３４にデータが送信されて終了するパターンである。この第４のパターンの通信は、第２のパターンの通信から第１のパターンの通信が連続的に行われる通信である。
【００８１】
時刻ｔ１において、ホストＣＰＵ３４は、ＲＦＩＤモジュール３２にデータの送信を開始したい場合、ＳＥＬ線４３の状態を、ＨからＬの状態に切り替える。このＳＥＬ線４３の信号の状態の変化を、ＲＦＩＤモジュール３２が検知することで、ＲＦＩＤモジュール３２は、ホストＣＰＵ３４からデータが送信されてくることを検知する。そして、ＲＦＩＤモジュール３２は、ホストＣＰＵ３４からのデータを受信できる状態に移行する。
【００８２】
ホストＣＰＵ３４は、ＳＥＬ線４３の信号の状態をＨからＬに切り替えた後、準備ができ次第、ＣＬＫ線４１で、クロック信号をＲＦＩＤモジュール３２に供給し、そのクロック信号に載せて、ＤＡＴＡ線４２を介して、データを送信する。全てのデータが送信されると、ホストＣＰＵ３４は、時刻ｔ２において、ＳＥＬ線４３の信号の状態をＬからＨの状態に戻す。このことによりＲＦＩＤモジュール３２は、ホストＣＰＵ３４からのデータの送信が終了したことを検知する。
【００８３】
時刻ｔ２の後の時点で、ＲＦＩＤモジュール３２は、ホストＣＰＵ３４にデータを送信する場合、ＩＲＱ線４４で、ＩＲＱ信号をホストＣＰＵ３４に対して通知する。ホストＣＰＵ３４は、ＩＲＱ信号を受信すると、データを受信する準備ができ次第、ＣＬＫ線４１で、クロック信号を、ＲＦＩＤモジュール３２に対して出す。クロック信号を、ＲＦＩＤモジュール３２が受信すると、そのクロックにデータを載せて、ＲＦＩＤモジュール３２は、データを出力する。
【００８４】
ＲＦＩＤモジュール３２は、ホストＣＰＵ３４に一番始めにデータ長を示す“Length”というデータを送信する。その後、送信したいデータを送信する。ホストＣＰＵ３４は、“Length”を受信した後、送信されてきたデータ長（受信したデータ長）のカウントを開始する。そして、ホストＣＰＵ３４は、そのカウントしているカウント値と、“Length”が示すデータ長が一致、または、超えた時点で、データの送信は終了したことを検知する。終了を検知した後、ホストＣＰＵ３４は、ＲＦＩＤモジュール３２へのクロックの供給を停止する。
【００８５】
このように、いずれのパターンにおいても、ホストＣＰＵ３４が、通信の開始と終了を制御するので、ＲＦＩＤモジュール３２とホストＣＰＵ３４は、通信の開始や終了を指示するコマンドコードを発行しなくても良い。よって、少なくとも、コマンドデータの分だけデータ長を削減することが可能となる。
【００８６】
すなわち、通信の開始は、ホストＣＰＵ３４が、ＩＲＱ信号を受信するか、またはＳＥＬ線４３の信号の状態をＨからＬに切り替え、ＣＬＫ線４１にクロックを供給することで判断される。しかしながら、この通信の開始は、コマンドコードの授受により行われるのではないので、そのようなコマンドデータのデータ長を削減することが可能となる。
【００８７】
また通信の終了は、ホストＣＰＵ３４が、ＲＦＩＤモジュール３２からの“Length”というデータ長に関するデータに基づく判断で行われるか、またはＳＥＬ線４３の信号の状態をＬからＨに切り替えることで判断される。しかしながら、この通信の終了は、コマンドコードの授受により行われるのではないので、そのようなコマンドデータのデータ長を削減することが可能となる。
【００８８】
また、コマンドデータを用いないことで、コマンドデータを作成、解釈するための機能を有さなくてもよくなる。よって、ＲＦＩＤモジュール３２とホストＣＰＵ３４、ともに、回路規模もしくはメモリサイズを縮小することが可能となり、消費電力の削減も実現できる。
【００８９】
さらには、上記した通信を実施するのに、新たな信号線を有するインタフェースを用いなくても実現できる。すなわち、割り込み信号（ＩＲＱ信号）をデータ送信開始のための信号線、データ送信方向信号線をデータ送信完了のための信号線として用い、ＲＦＩＤモジュール３２（Slave）からホストＣＰＵ３４（Master）へのデータの先頭にデータ長を付けておくことで実現される。よって、インタフェースの信号線を増やさずに、かつ、コマンドコードとデコード回路を無くすことを実現できる。よって、データ数の削減によるデータ送信速度の向上と、エンコード回路とデコード回路もしくはメモリサイズの削減による回路規模の削減効果と消費電力の削減効果を得ることが、本発明を適用することで期待できる。
【００９０】
［ＲＦＩＤモジュール３２の処理について］
次に、ＲＦＩＤモジュール３２に注目し、ＲＦＩＤモジュール３２が上述した通信を実行するときの処理について説明する。図８は、ＲＦＩＤモジュール３２の処理について説明するためのフローチャートである。
【００９１】
ステップＳ１０１において、ＲＦＩＤモジュール３２は、リーダライタ１１からのコマンドリクエストを受信したか否かを判断する。ここでは、ＲＦＩＤモジュール３２からホストＣＰＵ３４へのデータの転送が開始されるトリガーは、リーダライタ１１からのコマンドリクエストを受信したこととするため、ステップＳ１０１において、ＲＦＩＤモジュール３２は、リーダライタ１１からのコマンドリクエストを受信したか否かを判断するとして説明を続ける。しかしながら、他のトリガーでもよく、ステップＳ１０１における処理は、そのようなトリガーがあったか否かが判断される処理である。
【００９２】
ステップＳ１０１において、ＲＦＩＤモジュール３２は、リーダライタ１１からのコマンドリクエストを受信したと判断した場合、ステップＳ１０２に処理を進める。ステップＳ１０２において、受信されたポーリングコマンドが解析され、必要に応じて解析結果としてのLengthとDATA等が、記憶部３３に記憶される。すなわち、図３を参照して説明したように、データ７２乃至７５で構成されるコマンドリクエスト７１が受信され、そのうちのデータ７３に含まれるコマンドコードが解析される。そして、その解析結果に応じて、データ７２の“Length”とデータ７４の“DATA”が記憶部３３に記憶される。
【００９３】
なお、ＲＦＩＤモジュール３２は、上述したように、ホストＣＰＵ３４との間の通信では、コマンドを解釈する必要はないように構成されているが、リーダライタ１１との間の通信では、リーダライタ１１からのコマンドを解釈するように構成されている。ＲＦＩＤモジュール３２は、リーダライタ１１からのコマンドを解析し、その解析結果に応じて、ホストＣＰＵ３４と通信を行うようにしてもよい。
【００９４】
または、ＲＦＩＤモジュール３２は、リーダライタ１１からのコマンドも、ＲＦＩＤモジュール３２は解析せずに、単に、リーダライタ１１からのコマンドをホストＣＰＵ３４に転送する構成とすることも可能である。
【００９５】
このような解析や記憶が行われる一方で、ステップＳ１０３において、ＲＦＩＤモジュール３２は、ホストＣＰＵ３４に対して、ＩＲＱ信号（割り込み信号）を、ＩＲＱ線４４を介して出力する。そして、その割り込み信号に対する応答として、ホストＣＰＵ３４からＣＬＫ線４１を介してクロック信号の供給が開始されると、ステップＳ１０４において、ＲＦＩＤモジュール３２は、“Length”を出力する。例えば、ＲＦＩＤモジュール３２は、記憶部３３に記憶されているコマンドのデータ長を、“Length”としてホストＣＰＵ３４に供給する。
【００９６】
“Length”が出力された後、ＲＦＩＤモジュール３２は、ステップＳ１０５において、供給されるクロック信号に載せて、ホストＣＰＵ３４に供給すべきデータを、ＤＡＴＡ線４２を介して送信する。すなわち、図３の２行目に示したようなデータ７２とデータ７４を含むデータが、ＲＦＩＤモジュール３２からホストＣＰＵ３４に送信される。ＲＦＩＤモジュール３２は、データの送信が終了したか否かといった判断を行う必要がなく、データを送信することができるため、データを送信し終わった直後に、次の処理に移ることが可能である。
【００９７】
このようなデータの送信が終了された後、または、ステップＳ１０１において、コマンドリクエストを受信していないと判断された場合、ステップＳ１０６に処理が進められる。ここまでのステップＳ１０１乃至Ｓ１０５の処理は、上述した第１のパターンを実現するための処理である。
【００９８】
ステップＳ１０６において、ＲＦＩＤモジュール３２は、ＳＥＬ線４３の信号のＨからＬへの切り替わりを検知したか否かを判断する。ステップＳ１０６において、ＳＥＬ線４３の信号のＨからＬへの切り替わりを検知していないと判断された場合、ステップＳ１０１に処理が戻され、それ以降の処理が繰り返される。一方、ステップＳ１０６において、ＳＥＬ線４３の信号のＨからＬへの切り替わりを検知したと判断された場合、ステップＳ１０７に処理が進められる。
【００９９】
ステップＳ１０７において、ホストＣＰＵ３４からクロックに同期して送信されてきたデータ（例えば、図３の３行目に示したデータ８１）を受信し、必要に応じて、記憶部３３に記憶する。ステップＳ１０８において、ＲＦＩＤモジュール３２は、ＳＥＬ線４３の信号のＬからＨへの切り替わりを検知したか否かを判断する。ステップＳ１０８において、ＳＥＬ線４３の信号のＬからＨへの切り替わりは検知していないと判断された場合、すなわち、ホストＣＰＵ３４は、まだデータを送信中である場合、ステップＳ１０７に処理が戻され、データの受信と記憶が継続される。
【０１００】
一方、ステップＳ１０８において、ＲＦＩＤモジュール３２は、ＳＥＬ線４３の信号のＬからＨへの切り替わりを検知したと判断された場合、ステップＳ１０９に処理が進められる。この場合、ホストＣＰＵ３４からのデータを受信し終わった状態であるので、ステップＳ１０９において、必要に応じ、記憶部３３に記憶されたデータに必要な情報を付加して、リーダライタ１１に対して送信される。すなわち、図３の４行目に示したように、ホストＣＰＵ３４からのデータ８１に対して、データ８３（“Length”）、データ８４（コマンドコード）、およびデータ８５（ＣＲＣ）が付加され、コマンドレスポンス８２が生成され、リーダライタ１１に送信される。
【０１０１】
ステップＳ１０６からステップＳ１０９は、上述した第２のパターンを実現するための処理である。また、ステップＳ１０１からステップＳ１０９の処理が実行されるのは、上述した第３のパターンが実行されるときである。また、ステップＳ１０６からステップＳ１０９が実行された後、ステップＳ１０１乃至Ｓ１０５の処理が実行されるのは、上述した第４のパターンが実行されるときである。
【０１０２】
［ホストＣＰＵ３４の処理について］
次に、図８のフローチャートを参照して説明したＲＦＩＤモジュール３２の処理に対応して、ホストＣＰＵ３４側で実行される処理について、図９のフローチャートを参照して説明する。
【０１０３】
ホストＣＰＵ３２の処理がスタートする時点では、ホストＣＰＵ３２はＳＥＬ線４３の信号の状態をＨにしておく。
【０１０４】
ステップＳ１５１において、ホストＣＰＵ３４は、ＲＦＩＤモジュール３２から、ＩＲＱ線４４を介して、ＩＲＱ（割り込み）信号を受信したか否かを判断する。ステップＳ１５１において、ＩＲＱ信号を受信したと判断された場合、ステップＳ１５２に処理が進められ、受信していないと判断された場合、ステップＳ１５７に処理が進められる。
【０１０５】
ステップＳ１５２において、ＲＦＩＤモジュール３２からのデータの送信に対して準備ができ次第、ＣＬＫ線４１を介して、クロック信号の供給を開始する。クロック信号がＲＦＩＤモジュール３２に供給されることにより、その応答として、ステップＳ１５３において、ＲＦＩＤモジュール３２からの“Length”のデータが受信される。“Length”のデータが受信されると、ステップＳ１５４において、受信されたデータ長のカウントが開始される。
【０１０６】
ステップＳ１５５において、ＲＦＩＤモジュール３２から、ＤＡＴＡ線４２を介して送信されてきたデータが受信される。データが受信される毎に、受信されたデータ長がカウントされる。そして、ホストＣＰＵ３４は、ステップＳ１５６において、受信したデータ長、すなわち、カウントしているデータ長が、“Length”が示すデータ長以上になったか否かを判断する。
【０１０７】
ステップＳ１５６において、受信したデータ長が、“Length”が示すデータ長以上になっていないと判断された場合、換言すれば、まだ、ＲＦＩＤモジュール３２からデータが送信されてくると判断される場合、ステップＳ１５５に処理が戻され、データの受信が継続される。
【０１０８】
一方、ステップＳ１５６において、受信したデータ長が、“Length”が示すデータ長以上になったと判断された場合、換言すれば、まだ、ＲＦＩＤモジュール３２からのデータの送信は終了されたと判断された場合、ステップＳ１５７に処理が進められる。
【０１０９】
ステップＳ１５１乃至Ｓ１５６の処理は、上述した第１のパターンを実現するための処理である。
【０１１０】
ステップＳ１５７において、ホストＣＰＵ３４は、ＲＦＩＤモジュール３２に送信したいデータがあるか否かを判断する。ステップＳ１５７において、送信したいデータがあると判断された場合、ステップＳ１５８に処理が進められ、送信したいデータはないと判断された場合、ステップＳ１５１に処理が戻され、それ以降の処理が繰り返される。
【０１１１】
ステップＳ１５８において、送信したいデータがあることをＲＦＩＤモジュール３２に通知するために、ＳＥＬ線４３の信号の状態を、ＨからＬの状態に切り替える。このようにＳＥＬ線４３の信号の状態が切り替えられることで、ＲＦＩＤモジュール３２がデータを受信できる状態とされ、また、ホストＣＰＵ３４自体もデータの送信ができる状態になると、ステップＳ１５９に処理が進められる。
【０１１２】
ステップＳ１５９において、ホストＣＰＵ３４は、ＲＦＩＤモジュール３２に対して、ＤＡＴＡ線４２を介してデータを送信する。なお、クロック信号が、ＲＦＩＤモジュール３２にＣＬＫ線４１を介して供給されていない場合、データの送信が実行される前に、クロック信号の供給が開始される。
【０１１３】
ステップＳ１６０において、ホストＣＰＵ３４は、データの送信は終了したか否かを判断し、終了していないと判断した場合、ステップＳ１５９に処理を戻し、引き続き、ＲＦＩＤモジュール３２に対してのデータの送信を行う。一方、ステップＳ１６０において、データの送信は終了したと判断された場合、ステップＳ１６１に処理が進められる。
【０１１４】
ステップＳ１６１おいて、ホストＣＰＵ３４は、ＳＥＬ線４３の信号の状態を、ＬからＨの状態に戻す。このようにＳＥＬ線４３の信号が切り替えられることで、ＲＦＩＤモジュール３２は、データの送信が終了したことを検知し、次の処理へ移ることができる。
【０１１５】
ステップＳ１５７からステップＳ１６１は、上述した第２のパターンを実現するための処理である。また、ステップＳ１５１からステップＳ１６１の処理が実行されるのは、上述した第３のパターンが実行されるときである。また、ステップＳ１５７からステップＳ１６１が実行された後、ステップＳ１５１乃至Ｓ１５６の処理が実行されるのは、上述した第４のパターンが実行されるときである。
【０１１６】
このように、ＲＦＩＤモジュール３２とホストＣＰＵ３４との通信が行われることで、その間で送受信されるデータ長を短くすることができる。よって、データに送受信に関わる処理負担を軽減させることが可能となる。
【０１１７】
また、その間で送受信されるデータにはコマンドが含まれないため、そのようなコマンドを作成、解析する機能を有する必要がなくなり、回路規模もしくはメモリサイズを縮小することが可能となる。さらに、そのような機能を有さなくても良いため、コマンドを解析するため処理負担がなく、全体としての処理負担を軽減させることが可能となり、消費電力を削減できる。
【０１１８】
なお、上述した実施の形態においては、ＲＦＩＤモジュール３２とホストＣＰＵ３４との通信を例に挙げて説明したが、本発明の適用は、そのような通信に限定されるわけではない。換言すれば、本発明は、上述したシリアルインターフェースの通信方式としてＲＦＩＤを例に挙げて説明したが、ＲＦＩＤ以外の通信方式に対しても本発明を適用できる。
【０１１９】
［記録媒体について］
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウエアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
【０１２０】
図１０は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
【０１２１】
コンピュータにおいて、ＣＰＵ１０１、ROM（Read Only Memory）１０２、ＲＡＭ（Random Access Memory）１０３は、バス１０４により相互に接続されている。バス１０４には、さらに、入出力インタフェース１０５が接続されている。入出力インタフェース１０５には、入力部１０６、出力部１０７、記憶部１０８、通信部１０９、およびドライブ２１０が接続されている。
【０１２２】
入力部１０６は、キーボード、マウス、マイクロフォンなどよりなる。出力部１０７は、ディスプレイ、スピーカなどよりなる。記憶部１０８は、ハードディスクや不揮発性のメモリなどよりなる。通信部１０９は、ネットワークインタフェースなどよりなる。ドライブ１１０は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブルメディア１１１を駆動する。
【０１２３】
以上のように構成されるコンピュータでは、ＣＰＵ１０１が、例えば、記憶部１０８に記憶されているプログラムを、入出力インタフェース１０５およびバス１０４を介して、ＲＡＭ１０３にロードして実行することにより、上述した一連の処理が行われる。
【０１２４】
コンピュータ（CPU１０１）が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア２１１に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
【０１２５】
コンピュータでは、プログラムは、リムーバブルメディア２１１をドライブ２１０に装着することにより、入出力インタフェース１０５を介して、記憶部１０８にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部１０９で受信し、記憶部１０８にインストールすることができる。その他、プログラムは、ROM１０２や記憶部１０８に、あらかじめインストールしておくことができる。
【０１２６】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０１２７】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０１２８】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０１２９】
【図１】本発明を適用したシステムの一実施の形態の構成を示す図である。
【図２】システムの動作について説明するための図である。
【図３】データ構造について説明するための図である。
【図４】データの送受信のタイミングについて説明するための図である。
【図５】データの送受信のタイミングについて説明するための図である。
【図６】データの送受信のタイミングについて説明するための図である。
【図７】データの送受信のタイミングについて説明するための図である。
【図８】ＲＦＩＤモジュールの処理について説明するためのフローチャートである。
【図９】ホストＣＰＵの処理について説明するためのフローチャートである。
【図１０】記録媒体について説明する図である。
【符号の説明】
【０１３０】
１１  リーダライタ，  １２  ＲＦＩＤ内蔵機器，  ２１  ＲＦアンテナ，  ３１  ＲＦアンテナ，  ３２  ＲＦＩＤモジュール，  ３３  ＲＡＭ，  ３４  ホストＣＰＵ，  ４１  ＣＬＫ線，  ４２  ＤＡＴＡ線，  ４３  ＳＥＬ線，  ４４  ＩＲＱ線
【図１】
2010134672.tif 000003
【図２】
2010134672.tif 000004
【図３】
2010134672.tif 000005
【図４】
2010134672.tif 000006
【図５】
2010134672.tif 000007
【図６】
2010134672.tif 000008
【図７】
2010134672.tif 000009
【図８】
2010134672.tif 000010
【図９】
2010134672.tif 000011
【図１０】
2010134672.tif 000012