(57)【要約】【課題】異なる種類のデータフレームに対応するＲＦＩＤ装置の回路規模を抑制する。【解決手段】フレーム処理回路５０は、ペイロードからＲＦＩＤデータフレームを生成する生成処理、またはＲＦＩＤデータフレームを解析してペイロードを得る解析処理であるフレーム処理を行う。このフレーム処理は、データフレームの種類に応じて、ｎ個（ｎ：２以上の整数）の処理ステップのうちのｍ個（１≦ｍ≦ｎ）の処理ステップを含む。フレーム処理回路５０は、上記ｎ個の処理ステップを夫々実行するｎ個の処理ブロックを備える。これらのｎ個の処理ブロックには、データフレームの種類に応じてパスするか否かの設定が可能であり、パスしないと設定された場合に、受け取ったデータに対して当該ステップの処理を施して出力し、パスすると設定された場合に、受け取ったデータをそのまま出力するパス可能ブロック７０が含まれる。【選択図】図６
2010081371.tif 000002
【特許請求の範囲】
【請求項１】
ペイロードからＲＦＩＤデータフレームを生成する生成処理、またはＲＦＩＤデータフレームを解析してペイロードを得る解析処理であって、ｎ個（ｎ：２以上の整数）の処理ステップのうちの、前記データフレームの種類に応じたｍ個（１≦ｍ≦ｎ）の処理ステップを含むフレーム処理を行うフレーム処理回路であって、
前記ｎ個の処理ステップを夫々実行するｎ個の処理ブロックを備え、
前記ｎ個の処理ブロックには、
データフレームの種類に応じてパスするか否かの設定が可能であり、パスしないと設定された場合に、受け取ったデータに対して当該ステップの処理を施して出力し、パスすると設定された場合に、受け取ったデータをそのまま出力するパス可能ブロックが含まれることを特徴とするフレーム処理回路。
【請求項２】
前記データフレームの種類は、同一のプロトコルにおけるデータフォーマット種類を含むことを特徴とする請求項１に記載のフレーム処理回路。
【請求項３】
前記データフレームの種類は、プロトコルの種類を含むことを特徴とする請求項１または２に記載のフレーム処理回路。
【請求項４】
前記ｎ個の処理ブロックには、
データフレームの種類に応じて当該ステップの処理に用いられるパラメータの設定が可能であり、設定された前記パラメータを参照して当該ステップの処理を行うパラメータ変更可能ブロックが含まれることを特徴とする請求項１から３のいずれか１項に記載のフレーム処理回路。
【請求項５】
前記パス可能ブロックは、
受け取ったデータに対して当該ステップの処理を実行する本処理部と、
受け取ったデータをそのまま出力するバイパスと、
パスするか否かを示す設定値が書込み可能なパス設定レジスタと、
前記パス設定レジスタに書き込まれた設定値に基づいて、上段からのデータを前記本処理部に出力するか前記バイパスに出力するかの切替えを行うパススイッチとを備えることを特徴とする請求項１から４のいずれか１項に記載のフレーム処理回路。
【請求項６】
前記パラメータ変更可能ブロックは、
受け取ったデータに対して、当該ステップの処理を実行する本処理部と、
前記パラメータが書込み可能なパラメータレジスタとを備え、
前記本処理部は、前記パラメータレジスタに書き込まれたパラメータを用いて当該ステップの処理を実行することを特徴とする請求項４または５のいずれか１項に記載のフレーム処理回路。
【請求項７】
前記ｎ個の処理ブロックには、
異なる方式で当該ステップの処理を行う複数の本処理部を備え、データフレームの種類に応じて前記複数の本処理部を切替え可能な処理方式変更可能ブロックが含まれることを特徴とする請求項１から６のいずれか１項に記載のフレーム処理回路。
【請求項８】
前記処理方式変更可能ブロックは、
当該ステップの処理方式を示す設定値が書込み可能な処理方式設定レジスタと、
該処理方式設定レジスタに書き込まれた設定値に基づいて前記複数の本処理部の切替えを行う方式スイッチとを備えることを特徴とする請求項７に記載のフレーム処理回路。
【請求項９】
前記生成処理を行うものであり、
前記ｎ個の処理ブロックは、ＣＲＣ処理、パリティ処理、エンコード、先頭データ処理、終端データ処理を夫々行うことを特徴とする請求項１から８のいずれか１項に記載のフレーム処理回路。
【請求項１０】
前記解析処理を行うものであり、
前記ｎ個の処理ブロックは、先頭データ処理、終端データ処理、デコード、パリティ処理、ＣＲＣ処理を夫々行うことを特徴とする請求項１から８のいずれか１項に記載のフレーム処理回路。
【請求項１１】
請求項９に記載のフレーム処理回路であるフレーム生成回路と、
請求項１０に記載のフレーム処理回路であるフレーム解析回路とを備えることを特徴とするフレーム処理チップ。
【請求項１２】
アンテナと、
請求項１１に記載のフレーム処理チップからのデータフレームをＲＦ変調して前記アンテナに出力すると共に、前記アンテナが受信した信号をＲＦ復調して前記フレーム処理チップに出力するＲＦ変調／復調部と、
ＣＰＵを有し、前記フレーム処理チップへのペイロードの供給と、前記フレーム処理チップからのペイロードの処理と、前記フレーム処理チップにおける各処理ブロックの設定を含む制御処理とを行うデータコマンド処理部とを備えることを特徴とするＲＦＩＤリーダライタ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、フレーム処理技術、具体的にはＲＦＩＤ（Ｒａｄｉｏ  Ｆｒｅｑｕｅｎｃｙ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ）データフレームを生成する技術、またはＲＦＩＤデータフレームを解析してペイロードを得る技術に関する。
【背景技術】
【０００２】
ＲＦＩＤ技術は、物流や電子マネーなどの分野に広く用いられ、様々なプロトコルが規格化されている。ＲＦＩＤシステムは、概してＲＦＩＤタグとＲＦＩＤリーダライタを備えてなる。ＲＦＩＤタグとＲＦＩＤリーダライタの通信を成立させるためには、ＲＦＩＤタグとＲＦＩＤリーダライタは、同一のプロトコルに対応する必要がある。
【０００３】
ＲＦＩＤのデータフレームは、同一のプロトコルにおいても異なる複数の種類があり、異なる種類のデータフレームは、異なるデータフォーマットを有する。
【０００４】
例えば、ＩＳＯ１４４４３Ａで定められたプロトコルの場合、基本フレーム（Ｓｔａｎｄａｒｄ  Ｆｒａｍ）とショートフレーム（Ｓｈｏｒｔ  Ｆｒａｍｅ）がある。図１９は、この２種類のフレームのフォーマットを示す。
【０００５】
図１９に示すように、基本フレームは、ＳＯＣ、Ｐａｙｌｏａｄ、ＣＲＣ、ＥＯＣからなる。ＳＯＣは先頭データ（ヘッダともいう）であり、ＰａｙｌｏａｄとＣＲＣはパリティビットを含むペイロードとＣＲＣデータであり、ＥＯＣは終端データである。なお、ペイロードには、データコマンドが含まれている。
【０００６】
ショートフレームは、先頭データＳと、Ｐａｙｌｏａｄと、終端データＥからなる。ショートフレームは、ＣＲＣデータが含まれておらず、Ｐａｙｌｏａｄ（ペイロード）にもパリティデータが追加されていない。また、ショートフレームの先頭データＳは、基本フレームの先頭データＳＯＣと異なり、終端データＥも、基本フレームの終端データＥＯＣと異なる。
【０００７】
そのため、基本フレームを生成する処理と、ショートフレームを生成する処理（以下生成処理という）も異なる。基本フレームの生成処理には、ペイロードに対してＣＲＣデータを追加する処理ステップと、ペイロードとＣＲＣデータに対してパリティ演算を行ってパリティビットを追加する処理ステップが含まれる。
【０００８】
一方、ショートフレームの生成には、上記２つの処理ステップが無い。
また、基本フレームとショートフレームのいずれの生成処理にも含まれる先頭データの追加ステップでは、基本フレームとショートフレームとで追加される先頭データが異なる。終端データの追加ステップについても同様である。
【０００９】
基本フレームとショートフレームのいずれも、通信に用いられるため、ＩＳＯ１４４４３Ａに対応するＲＦＩＤリーダライタとＲＦＩＤタグにおいて、データフレームの生成処理を担う部分は、両方のフレームを生成可能である必要がある。
【００１０】
また、受信したデータフレームからペイロードを得る解析処理も、基本フレームとショートフレームとで異なり、データフレームの解析処理を担う部分は、両方のフレームを解析可能である必要がある。
【００１１】
これを実現するためには、２つの手法が考えられる。１つは、ハードウェアにより実現する手法である。例えば、基本フレーム生成用の回路とショートフレーム生成用の回路を設け、生成対象のデータフレームの種類に応じてこの２つの回路を切り替える。もう１つは、データフレームの生成をソフトウェアにより行う手法である。
なお、データフレームの解析処理を担う部分についても同様である。
【００１２】
近年、ＲＦＩＤ規格の多様化と実用化により、１つのＲＦＩＤ装置（ＲＦＩＤリーダライタまたはＲＦＩＤタグ）により複数のプロトコルに対応することが希望されている。
【００１３】
図２０は、特許文献１の図１に対して符号を変更したものであり、特許文献１に開示された、複数のプロトコルに対応可能なＲＦＩＤシステムを示す。
【００１４】
図２０に示すＲＦＩＤシステムは、ＲＦＩＤタグ１０とＲＦＩＤリーダライタ装置１３を備える。ＲＦＩＤタグ１０は、２つのＲＦＩＤ部（ＲＦＩＤ部Ａ１１、ＲＦＩＤ部Ｂ１２）を有し、２つのＲＦＩＤ部は、電波を受信するアンテナと、ＲＦＩＤリーダライタ装置１３から受信した高周波数の電波を整流し動作電力を発生させる起電力部と、ＲＦ変調／復調を行うＲＦ部と、プロトコル処理部と、ＩＤデータやユーザデータを記憶する記憶部とを、夫々備える。
【００１５】
プロトコル処理部は、データフレームの生成と解析を担う。ＲＦＩＤ部Ａ１１のプロトコル処理部は第１のプロトコルに対応し、ＲＦＩＤ部Ｂ１２のプロトコル処理部は第２のプロトコルに対応する。
【００１６】
さらに、回路規模を小さくするために、ＲＦＩＤタグ１０において、２つのＲＦＩＤ部について、共用可能部分を供用させることも提案されている。図２１は、特許文献１における図５に対して符号を変更したものである。図２１に示すように、ＲＦＩＤタグ１０は、アンテナ２０と、アンテナ２１と、共通ＲＦ部２２と、共通起電力部２３と、ＲＦＩＤ共通プロトコル処理部２４と、共通記憶部２７を備える。
【００１７】
ＲＦＩＤ共通プロトコル処理部２４は、データフレームの生成と解析を行うものであり、第１のプロトコル処理部２５と第２のプロトコル処理部２６を備える。第１のプロトコル処理部２５は、第１のプロトコルに対応し、第１のプロトコルのデータフレームの生成と解析を担う。第２のプロトコル処理部２６は、第２のプロトコルに対応し、第２のプロトコルのデータフレームの生成と解析を担う。
【００１８】
図２１に示すＲＦＩＤタグ１０は、第１のプロトコルと第２のプロトコルの両方に対応可能であると共に、ＲＦ部、起電力部、記憶部の共有により回路規模を抑制できる。
【００１９】
また、リーダライタ本体１４も、複数のプロトコルに対応するために、プロトコル毎にＲＦＩＤプロトコル処理部を備える。
【特許文献１】特開２００７−３３４７０３号公報
【発明の開示】
【発明が解決しようとする課題】
【００２０】
単一のプロトコルにおける異なる種類のデータフレームの生成および解析ができるように、ＲＦＩＤ装置においてデータフレームの種類に夫々対応する回路を設けて切り替えて使用する手法では、回路規模が大きいという問題がある。また、データフレームの生成および解析をソフトウェアにより行う手法では、処理速度はハードウェアの場合より遅くなると共に、メモリ容量の増大などに起因して回路規模が大きくなるという問題がある。
【００２１】
複数のプロトコルに対応するＲＦＩＤ装置例えば図２１に示すＲＦＩＤタグ１０では、これらの複数のプロトコルに夫々対応するプロトコル処理部は、単一のプロトコルにのみ対応するＲＦＩＤ装置と同様に上述した問題を有する。さらに、プロトコル毎にプロトコル処理部が設けられるため、回路規模が一層増大する。
【課題を解決するための手段】
【００２２】
本発明の１つの態様は、フレーム処理回路である。このフレーム処理回路は、ペイロードからＲＦＩＤデータフレームを生成する生成処理、またはＲＦＩＤデータフレームを解析してペイロードを得る解析処理であって、ｎ個（ｎ：２以上の整数）の処理ステップのうちの、データフレームの種類に応じたｍ個（１≦ｍ≦ｎ）の処理ステップを含むフレーム処理を行うものであり、上記ｎ個の処理ステップを夫々実行するｎ個の処理ブロックを備える。
【００２３】
これらの処理ブロックには、データフレームの種類に応じてパスするか否かの設定が可能であり、パスしないと設定された場合に、受け取ったデータに対して当該ステップの処理を施して出力し、パスすると設定された場合に、受け取ったデータをそのまま出力するパス可能ブロックが含まれている。
【発明の効果】
【００２４】
本発明の技術によれば、ＲＦＩＤ装置の回路規模を抑制すると共に、処理速度の低下を回避できる。
【発明を実施するための最良の形態】
【００２５】
説明の明確化のため、以下の記載及び図面は、適宜省略、及び簡略化がなされている。各図面において同一の構成または機能を有する構成要素および相当部分には、同一の符号を付し、それらの説明を省略する。また、本発明の説明に直接的な関連性が無く、該分野において通常知られているものについても省略する。
【００２６】
本発明の具体的な実施の形態を説明する前に、まず、本発明の原理を説明する。
本願発明者は、ＲＦＩＤ装置におけるデータフレームの生成および解析について鋭意研究模索した結果、下記のことを知見した。ＩＳＯ１４４４３Ａで定められたプロトコルを例に説明する。
【００２７】
図１の左側は、ＩＳＯ１４４４３Ａの基本フレームの生成処理の流れの例を示すフローチャートであり、右側は、左側のフローチャートが示す処理の実行に伴ってデータの変化態様を示す。図中において、長方枠によりデータを示すが、枠の長さはデータの長さを表すものではない。これについて、以下の説明に用いられる各図面においても同様である
【００２８】
図１に示すように、基本フレームは、ＣＲＣ処理（Ｓ１０）、パリティ処理（Ｓ１２）、エンコード（Ｓ１４）、先頭データ処理（Ｓ１６）、終端データ処理（Ｓ１８）の順次実行により生成される。ＣＲＣ処理（Ｓ１０）では、ＣＲＣ演算が行われ、ペイロードにＣＲＣデータが追加される。パリティ処理（Ｓ１２）では、パリティ演算が行われ、ＣＲＣ処理（Ｓ１０）により得られたデータにパリティビットＰが追加される。エンコード（Ｓ１４）では、パリティ処理（Ｓ１２）により得られたデータがエンコードされる。先頭データ処理（Ｓ１６）では、エンコード（Ｓ１４）により得られたデータに先頭データ（ここではＳＯＣ）が追加される。最後に、終端データ処理（Ｓ１８）では、終端データ（ここではＥＯＣ）が追加され、基本フレームが生成される。なお、本発明の図面において、混同される可能性が低く、かつ本発明の主旨を理解する上で問題が無い場合に、エンコードされる前のデータとエンコードされた後のデータに対して特に符号で区別しない。パリティビットの有無についても同様である。
【００２９】
図２の左側は、ＩＳＯ１４４４３Ａのショートフレームの生成処理の流れを示すフローチャートであり、右側は、左側のフローチャートが示す処理の実行に伴ってデータの変化態様を示す。
【００３０】
図２に示すように、ショートフレームは、エンコード（Ｓ２０）、先頭データ処理（Ｓ２２）、終端データ処理（Ｓ２４）の順次実行により生成される。先頭データ処理（Ｓ２２）では、ペイロードに先頭データ（ここではＳ）が追加される。そして、終端データ処理（Ｓ２４）では、終端データ（ここではＥ）が追加され、ショートフレームが生成される。
【００３１】
図１と図２を比較すると分かるように、基本フレームの生成処理は、５つのステップからなり、ショートフレームの生成処理は、３つのステップからなる。ショートフレームの生成処理におけるステップＳ２２（先頭データ処理）と、基本フレームの生成処理におけるステップＳ１６（先頭データ処理）とは、先頭データの中身が「Ｓ」と「ＳＯＣ」のいずれであるかの点において異なる以外、共に、「受け取ったデータの先頭に先頭データを追加する」である。同様に、ショートフレームの生成処理におけるステップＳ２４（終端データ処理）と、基本フレームの生成処理におけるステップＳ１８（終端データ処理）とは、終端データの中身が「Ｅ」と「ＥＯＣ」のいずれであるかの点において異なる以外、共に、「受け取ったデータの末尾に終端データを追加する」である。
【００３２】
図３の左側は、ＩＳＯ１４４４３Ａの基本フレームの解析処理の流れの例を示すフローチャートであり、右側は、左側のフローチャートが示す処理の実行に伴ってデータの変化態様を示す。なお、図中点線枠は、処理によって削除されるデータを示す。これについて、以下の図面において同様である。また、本発明の図面において、混同される可能性が低く、かつ本発明の主旨を理解する上で問題が無い場合に、デコードされる前のデータとデコードされた後のデータに対しても特に符号で区別しない。
【００３３】
図３に示すように、基本フレームは、先頭データ処理（Ｓ３０）、終端データ処理（Ｓ３２）、デコード（Ｓ３４）、パリティ処理（Ｓ３６）、ＣＲＣ処理（Ｓ３８）の順次実行により解析される。
【００３４】
先頭データ処理（Ｓ３０）では、基本フレームの先頭データＳＯＣの検出と解析が行われる。また、検出した先頭データＳＯＣと期待値が一致した場合には、先頭データＳＯＣの削除が行われる。なお、検出した先頭データＳＯＣと期待値が一致しない場合には、エラーとなり、処理は中断される。
【００３５】
終端データ処理（Ｓ３２）では、先頭データ処理（Ｓ３０）により先頭データＳＯＣを削除された後のデータ（ｒｅｍａｉｎ  Ｄａｔａ。以下残留データという）に対する終端データＥＯＣの検出と解析が行われる。また、検出した終端データＥＯＣと期待値が一致した場合には、終端データＥＯＣの削除が行われる。なお、検出した終端データＥＯＣと期待値が一致しない場合には、エラーとなり、処理は中断される。
【００３６】
デコード（Ｓ３４）では、終端データ処理（Ｓ３２）により得られた残留データがデコードされる。なお、デコード中に異常が生じた場合には、エラーとなり、処理は中断される。
【００３７】
パリティ処理（Ｓ３６）では、パリティ演算が行われ、デコードされた残留データ（ｒｅｍａｉｎ  Ｄａｔａ）からパリティビットＰが除去される。なお、除去に際して、パリティビットＰが検出できなかったなどの異常が生じた場合には、エラーとなり、処理は中断される。
【００３８】
最後に、ＣＲＣ処理（Ｓ３８）では、ＣＲＣ演算が行われ、パリティ処理（Ｓ３６）の残留データからＣＲＣデータが除去され、ペイロードが得られる。これにて、基本フレームの解析処理が完了する。なお、ＣＲＣ演算によるＣＲＣチェックの結果、異常が生じた場合には、エラーとなり、処理は中断される。
【００３９】
図４の左側は、ＩＳＯ１４４４３Ａのショートフレームの解析処理の流れの例を示すフローチャートであり、右側は、左側のフローチャートが示す処理の実行に伴ってデータの変化態様を示す。
【００４０】
図４に示すように、ショートフレームは、先頭データ処理（Ｓ４０）、終端データ処理（Ｓ４２）、デコード（Ｓ４４）の順次実行により解析される。先頭データ処理（Ｓ４０）では、ショートフレームの先頭データＳの検出と解析が行われる。また、検出した先頭データＳと期待値が一致した場合には、先頭データＳの削除が行われる。なお、検出した先頭データＳと期待値が一致しない場合には、エラーとなり、処理は中断される。
【００４１】
終端データ処理（Ｓ４２）では、先頭データ処理（Ｓ４０）により得られた残留データに対する終端データＥの検出と解析が行われる。また、検出した終端データＥと期待値が一致した場合には、終端データＥの削除が行われる。なお、検出した終端データＥと期待値が一致しない場合には、エラーとなり、処理は中断される。
【００４２】
デコード（Ｓ４４）では、終端データ処理（Ｓ４２）により得られた残留データがデコードされ、ペイロードが得られる。これにて、ショートフレームの解析処理が完了する。なお、デコード中に異常が生じた場合には、エラーとなり、処理は中断される。
【００４３】
図３と図４を比較すると分かるように、基本フレームの解析処理は、５つのステップからなり、ショートフレームの解析処理は、３つのステップからなる。ショートフレームの解析処理におけるステップＳ４０（先頭データ処理）と、基本フレームの解析処理におけるステップＳ３０（先頭データ処理）とは、先頭データの中身が「Ｓ」と「ＳＯＣ」のいずれであるかの点において異なる以外、共に、「受け取ったデータ先頭にある先頭データの検出と解析を行って削除する」である。同様に、ショートフレームの解析処理におけるステップＳ４２（終端データ処理）と、基本フレームの解析処理におけるステップＳ４２（終端データ処理）とは、終端データの中身が「Ｅ」と「ＥＯＣ」のいずれであるかの点において異なる以外、共に、「受け取ったデータの末尾にある終端データの検出と解析を行って削除する」である。
【００４４】
すなわち、ＩＳＯ１４４４３Ａでは、基本フレームの生成処理をＣＲＣ処理、パリティ処理、エンコード処理、先頭データ処理、終端データ処理にステップ分けした場合、これらのステップのうちの３つのステップ（先頭データ処理、エンコード、終端データ処理）によりショートフレームの生成処理を構成できる。なお、解析処理についても同じである。
【００４５】
以下において、説明上の便宜のため、「フレーム処理」を、データフレームの生成処理または解析処理のいずれかの意味で用いる。
【００４６】
ＩＳＯ１４４４３Ａに限らず、他のＲＦＩＤプロトコルについても、ある種類のデータフレームのフレーム処理を構成する複数のステップに含まれる一部のステップが、別の種類のデータフレームのフレーム処理を構成するように、フレーム処理をステップ分けすることができる。また、この一部のステップは、処理に用いられるパラメータが異なる種類のデータフレーム間で同じである場合には、データフレームの種類に応じてパラメータを変更する必要が無く、ＩＳＯ１４４４３Ａのショートフレームと基本フレームのように、処理に用いられるパラメータが異なる場合には、データフレームの種類に応じてパラメータを変更すればよい。また、上記一部のステップは、異なる種類のデータフレーム間で処理方式が異なる場合には、当該ステップの処理を担う部分を処理方式毎に設け、データフレームの種類に応じて切り替えるようにすればよい。
【００４７】
さらに、１つのプロトコルにおける異なる種類のデータフレームに限らず、複数の異なるプロトコルのデータフレームについても、上記のことを言える。ここでいくつかのプロトコルを例に説明する。なお、簡潔にするために、各プロトコルにおける基本フレームを例にする。また、先頭データが上位ビットである（すなわち終端データが下位ビットである）か、先頭データが下位ビットである（すなわち終端データが上位ビットである）かは、プロトコルによって異なるが、データフレームの伝送は先頭データからである。以下において、データフレームの各構成要素を伝送順に示す。
【００４８】
図５は、ＩＳＯ１４４４３Ａ、ＩＳＯ１５６９３、ＩＳＯ１８０９２、ＩＳＯ１８０００−６、ＩＳＯ１８０００−４の５つのＲＦＩＤプロトコルに夫々定義され、ＲＦＩＤリーダライタが処理する基本フレームの構成を示す。なお、ＩＳＯ１８０００−６とＩＳＯ１８０００−４では、ＲＦＩＤリーダライタが送信する基本フレームと受信するフレームのフォーマットが異なり、図５において夫々示している。各基本フレームにおいて、「ＣＲＣ」の後の括弧中の数字は、ＣＲＣデータのビット数を示す。また、各基本フレームの構成要素について、そのプロトコルで用いられた用語で表記する。
【００４９】
図５に示すように、ＩＳＯ１４４４３Ａの基本フレームは、先頭データＳＯＣと、ペイロードと、１６ビットのＣＲＣデータと、終端データＥＯＣからなる。以下、説明上の便宜のため、ペイロードとＣＲＣを合わせてＰＡＹＣＲＣという場合がある。また、ＰＡＹＣＲＣは、通常、生成処理に際してエンコードされ、解析処理に際してデコードされる。
【００５０】
ＩＳＯ１５６９３の基本フレームは、先頭データＳＯＦと、ＰＡＹＣＲＣと、終端データＥＯＦからなる。ＣＲＣは、１６ビットである。
【００５１】
ＩＳＯ１８０９２の基本フレームは、先頭データ（Ｐｒｅａｍｂｌｅ＋ＳＹＮＣ＋ＬＥＮＧＴＨ）と、ＰＡＹＣＲＣからなる。ＩＳＯ１８０９２の基本フレームの先頭データにおけるＳＹＮＣは、ＩＳＯ１８０９２のＰＡＹＣＲＣをデコードする際に用いられる極性データ（Ｐｏｌａｒｉｔｙ  Ｄａｔａ）が含まれている。また、ＰＡＹＣＲＣのデータ長を示すＬＥＮＧＴＨも、デコードの際に用いられる。ＩＳＯ１８０９２の基本フレームのＣＲＣも１６ビットである。ＩＳＯ１８０９２の基本フレームには、終端データが無い。
【００５２】
ＩＳＯ１８０００−６では、ＲＦＩＤリーダライタが送信する基本フレームは、先頭データと、ＰＡＹＣＲＣからなる。先頭データは、ＰｒｅａｍｂｌｅとＦｒａｍｅｓｙｎｃの２種類がある。ＣＲＣは、１６ビットと５ビットの２種類がある。また、ＲＦＩＤリーダライタが受信する基本フレームは、先頭データＰｒｅａｍｂｌｅとＰＡＹＣＲＣとからなり、ＣＲＣは、１６ビットである。ＩＳＯ１８０００−６の基本フレームも、終端データが無い。
【００５３】
ＩＳＯ１８０００−４では、ＲＦＩＤリーダライタが送信する基本フレームは、先頭データ（Ｐｒｅａｍｂｌｅ＋ｄｅｔｅｃｔとＰｒｅａｍｂｌｅ＋Ｄｅｌｉｍｉｔｅｒ）とＰＡＹＣＲＣからなり、ＣＲＣは１６ビットである。また、ＲＦＩＤリーダライタが受信する基本フレームは、先頭データ（Ｑｕｉｅｔ＋Ｐｒｅａｍｂｌｅ）とＰＡＹＣＲＣからなり、ＣＲＣは、１６ビットである。ＩＳＯ１８０９２の基本フレームも、終端データが無い。
【００５４】
また、図５に示していないが、プロトコルによって、ＰＡＹＣＲＣのデータには、パリティビットが挿入されたものもあれば、パリティビットが挿入されていないものもある。
【００５５】
図５に示す各プロトコルの基本フレームの構成から分かるように、基本フレームの生成処理を、ＣＲＣ処理、パリティ処理、エンコード、先頭データ処理、終端データ処理にステップ分けすれば、ＩＳＯ１４４４３Ａの場合のみ、基本フレームを生成する際にすべてのステップが必要である。他のプロトコルの基本フレームの生成に際しては、エンコード、ＣＲＣ処理、先頭データ処理のステップが必ずあるが、他のステップについては、プロトコルによって無い場合がある。
【００５６】
そのため、ＲＦＩＤリーダライタのフレーム生成を担う部分を、ＣＲＣ処理ブロックと、パリティ処理ブロック、エンコードブロック、先頭処理ブロック、終端データ処理ブロックに分けて構成すると共に、パリティ処理ブロックと終端データ処理ブロックをパス可能にすれば、図５に示す５つのプロトコルの基本フレームの生成に対応できる。プロトコルによって当該ステップの処理に用いられるパラメータが異なる場合には、プロトコルに応じたパラメータをその処理ブロックに対して設定すればよい。また、異なるプロトコル間で処理方式が異なるステップについては、処理方式毎に当該ステップの処理部を設け、プロトコルに応じて処理部を切り替えればよい。例えば、エンコード処理について、エンコード方式毎にエンコード部を設け、プロトコルに応じてエンコード部を切り替える。
また、ＲＦＩＤリーダライタのフレーム解析を担う部分を、先頭処理ブロック、終端データ処理ブロック、デコードブロック、パリティ処理ブロック、ＣＲＣ処理ブロックに分けて構成すると共に、パリティ処理ブロックと終端データ処理ブロックをパス可能にすれば、図５に示す５つのプロトコルの基本フレームの解析に対応できる。プロトコルによって当該ステップの処理に用いられるパラメータが異なる場合には、プロトコルに応じたパラメータをその処理ブロックに対して設定すればよい。また、異なるプロトコル間で処理方式が異なるステップについては、処理方式毎に当該ステップの処理部を設け、プロトコルに応じて処理部を切り替えればよい。例えば、ＩＳＯ１８０９２の場合、デコードする際に、他のプロトコルの場合に行わないＬＥＮＧＴＨを検出する必要がある。そのため、デコード処理を担うブロックとして、ＬＥＮＧＴＨを検出してデコードするものと、ＬＥＮＧＴＨ検出を行わずにデコードするものとを夫々設け、デコードステップの処理に際して切り替えるようにすればよい。
【００５７】
さらに、フレームの種類によって、先頭データと終端データまたはそれらの一部に対してもエンコードされるように規定されている場合がある。その場合、先頭データ処理ブロックと終端データ処理ブロックに対してパラメータを設定する際に、エンコードされた先頭データと終端データを設定すればよい。
【００５８】
上記知見に基づき、本願発明者は、ＲＦＩＤ装置の回路規模を抑制すると共に、処理速度の低下を回避できるフレーム処理回路を提案する。ここでいう「フレーム処理回路」は、データフレームを生成する回路、またはデータフレームを解析する回路のいずれかである。
【００５９】
図６は、本願発明者が提案するフレーム処理回路の模式図である。このフレーム処理回路５０は、処理ブロック６０と、パス可能ブロック７０と、パラメータ変更可能ブロック８０と、処理方式変更可能ブロック９０とが順次接続されてなる。なお、図６は、本発明の原理を説明するための模式図であり、処理ブロックの接続順序、各種処理ブロックの数は、図示に限られることが無い。また、パス可能ブロック７０を除き、他の各種の処理ブロックは、必ずしも全て備えられるとは限らない。
【００６０】
図６に示すフレーム処理回路５０は、異なる種類のデータフレームのフレーム処理に対応可能である。データフレームの種類は、単一のプロトコルで定義された異なるフォーマットの種類に限らず、プロトコルの種類も含む。
【００６１】
ここで、フレーム１〜フレーム３の３種類のデータフレームがあるとする。図７は、これらのフレームのフレーム処理を構成するステップの例を示す。
【００６２】
図７に示すように、フレーム１のフレーム処理は、ステップ１、ステップ２、ステップ３、ステップ４を含む。
フレーム２のフレーム処理は、ステップ１、ステップ３、ステップ４を含む。
フレーム３のフレーム処理は、ステップ１、ステップ２、ステップ３、ステップ４を含む。
上記ステップ１〜ステップ４に対応する処理は、夫々処理１、処理２、処理３、処理４とする。
【００６３】
フレーム１と、フレーム２と、フレーム３とで、ステップ３（処理３）に用いられるパラメータが異なり、フレーム１およびフレーム２と、フレーム３とで、ステップ４（処理４）の処理方式が異なる。なお、フレーム１とフレーム２に対応するステップ４の処理方式が第１の処理方式であり、フレーム３に対応するステップ４の処理方式が第２の処理方式であるとする。
【００６４】
フレーム処理回路５０において、処理ブロック６０は処理１を実行し、パス可能ブロック７０は処理２を実行可能であり、パラメータ変更可能ブロック８０は処理３を実行し、処理方式変更可能ブロック９０は処理４を実行する。
【００６５】
処理ブロック６０が実行する処理１は、フレーム１〜３のいずれのフレーム処理にも含まれ、処理に用いられるパラメータおよび処理方式は、フレーム１〜３について同一である。
【００６６】
パス可能ブロック７０は、処理ブロック６０からのデータに対して処理２を施してパラメータ変更可能ブロック８０に出力するか、処理をせずにそのまま後段のパラメータ変更可能ブロック８０に出力する。図８は、その構成例を示す。
【００６７】
図８に示すように、パス可能ブロック７０は、パス設定レジスタ７２と、パススイッチ７４と、本処理部７６と、バイパス７８を備える。
【００６８】
本処理部７６は、処理２を実行するものである。パス設定レジスタ７２は、処理ブロック６０からのデータに対して処理２を施すかを示す設定値を格納する。バイパス７８は、処理ブロック６０からのデータをそのままパラメータ変更可能ブロック８０に出力するための接続線である。パススイッチ７４は、パス設定レジスタ７２に格納された設定値を参照して、処理ブロック６０からのデータを本処理部７６に出力するかバイパス７８に出力するかの切替えを行う。
【００６９】
パス設定レジスタ７２に格納された設定値が「パスしない」を示す場合に、パススイッチ７４は、処理ブロック６０からのデータを本処理部７６に出力する。これにより、処理ブロック６０からのデータは、本処理部７６により処理２が施されてパラメータ変更可能ブロック８０に出力される。
【００７０】
また、パス設定レジスタ７２に格納された設定値が「パスする」を示す場合に、パススイッチ７４は、処理ブロック６０からのデータをバイパス７８に出力する。これにより、処理ブロック６０からのデータは、そのままパラメータ変更可能ブロック８０に出力される。
【００７１】
パス可能ブロック７０のこのような構成により、パス設定レジスタ７２に格納された設定値を変更することで、フレーム処理に際して処理２をパスするか否かの制御ができる。
【００７２】
パラメータ変更可能ブロック８０は、パス可能ブロック７０からのデータに対して処理３を施して処理方式変更可能ブロック９０に出力する。図９は、その構成例を示す。
【００７３】
図９に示すように、パラメータ変更可能ブロック８０は、パラメータレジスタ８２と、本処理部８４を備える。パラメータレジスタ８２は、処理３に用いられるパラメータを格納する。本処理部８４は、パス可能ブロック７０からのデータに対して処理３を実行して処理方式変更可能ブロック９０に出力し、処理３の実行に際してはパラメータレジスタ８２に格納されたパラメータを参照する。
【００７４】
パラメータ変更可能ブロック８０のこのような構成により、処理３を実行する際に用いられるパラメータを変更可能である。
【００７５】
処理方式変更可能ブロック９０は、複数（ここでは２つ）の処理方式に対応し、パラメータ変更可能ブロック８０からのデータに対してこれらの複数の処理方式のうちの１つの方式で処理４を施して出力する。なお、夫々の処理方式の処理を実行するためには、異なるハードウェア構成の処理部が必要である。図１０は、その構成例を示す。
【００７６】
図１０に示すように、処理方式変更可能ブロック９０は、処理方式レジスタ９２と、方式スイッチ９４と、第１の本処理部９６と、第２の本処理部９７を備える。
【００７７】
第１の本処理部９６は、第１の処理方式で処理４を行ものであり、第２の本処理部９７は、第２の処理方式で処理４を行うものである。
【００７８】
処理方式レジスタ９２は、第１の処理方式と第２の処理方式のいずれかを示す設定値を格納する。方式スイッチ９４は、処理方式レジスタ９２に格納された設定値を参照して、パラメータ変更可能ブロック８０からのデータを、第１の本処理部９６に出力するか第２の本処理部９７に出力するかの切替えを行う。
【００７９】
処理方式変更可能ブロック９０のこのような構成により、処理方式レジスタ９２に格納された設定値を変更することで、フレーム処理に際して、いずれの処理方式で処理４を行うかの制御ができる。
【００８０】
フレーム処理回路５０に対して、パス設定レジスタ、パラメータレジスタ、処理方式レジスタ９２の格納値を変更することによって上述した３種類のフレームのフレーム処理ができる。フレーム毎に説明する。
＜フレーム１＞
【００８１】
この場合、パス可能ブロック７０のパス設定レジスタ７２に対して「パスしない」、パラメータ変更可能ブロック８０のパラメータレジスタ８２に対して「フレーム１に対応するパラメータ」、処理方式変更可能ブロック９０の処理方式レジスタ９２に対して「第１の処理方式」を設定する。
【００８２】
このような設定により、フレーム処理回路５０において、処理１、処理２、処理３、処理４が順次実行され、処理３では、フレーム１に対応するパラメータが用いられ、処理４は、第１の処理方式の第１の本処理部９６により行われる。すなわち、フレーム１に対するフレーム処理が実行される。
＜フレーム２＞
【００８３】
この場合、パス可能ブロック７０のパス設定レジスタ７２に対して「パスする」、パラメータ変更可能ブロック８０のパラメータレジスタ８２に対して「フレーム２に対応するパラメータ」、処理方式変更可能ブロック９０の処理方式レジスタ９２に対して「第１の処理方式」を設定する。
【００８４】
このような設定により、フレーム処理回路５０において、処理１、処理３、処理４が順次実行され、処理３では、フレーム２に対応するパラメータが用いられ、処理４は、第１の処理方式の第１の本処理部９６により行われる。すなわち、フレーム２に対するフレーム処理が実行される。
＜フレーム３＞
【００８５】
この場合、パス可能ブロック７０のパス設定レジスタ７２に対して「パスしない」、パラメータ変更可能ブロック８０のパラメータレジスタ８２に対して「フレーム３に対応するパラメータ」、処理方式変更可能ブロック９０の処理方式レジスタ９２に対して「第２の処理方式」を設定する。
【００８６】
このような設定により、フレーム処理回路５０において、処理１、処理２、処理３、処理４が順次実行され、処理３では、フレーム３に対応するパラメータが用いられ、処理４は、第２の処理方式の第２の本処理部９７により行われる。すなわち、フレーム３に対するフレーム処理が実行される。
【００８７】
すなわち、フレーム処理回路５０は、フレーム処理を構成しうる複数のステップをそれぞれ実行する処理ブロックを備え、データフレームの種類に応じて所定の処理ブロックをパスしたり、所定の処理ブロックに対してパラメータを変更したり、所定の処理ブロックに対して処理方式を変更することが可能である。そのため、ＲＦＩＤ装置において、データフレームの種類毎にフレーム処理部を設ける必要が無く、回路規模を抑制することができる。また、ハードウェアによりフレーム処理を実行しているので、ソフトウェアを用いる場合より処理速度を向上させることができると共に、回路規模も小さくできる。
【００８８】
勿論、パラメータ変更可能ブロック８０はパラメータ変更可能であると共に、同時にパス可能に構成してもよい。同様に、処理方式変更可能ブロック９０は、同時にパス可能、パラメータ変更可能に構成してもよい。すなわち、必要があれば、図５に示す各種処理ブロック以外に、パス可能／パラメータ変更可能処理ブロック、パス可能／処理方式変更可能処理ブロック、パラメータ変更可能／処理方式変更可能処理ブロック、パス可能／パラメータ変更可能／処理方式変更可能処理ブロックの各種の処理ブロックがフレーム処理回路に含まれることもできる。
【００８９】
以上の説明を踏まえて、本発明の原理を具現化したＲＦＩＤシステムを説明する。
図１１は、本発明の実施の形態にかかるＲＦＩＤシステム１００を示す。ＲＦＩＤシステム１００は、ＲＦＩＤリーダライタ２００と、ＲＦＩＤタグ６００を備え、ＲＦＩＤリーダライタ２００は、ＩＳＯ１４４４３Ａ、ＩＳＯ１５６９３、ＩＳＯ１８０９２、ＩＳＯ１８０００−６、ＩＳＯ１８０００−４の複数のプロトコルに対応する。すなわち、ＲＦＩＤタグ６００がこれらのプロトコルのいずれに準拠したものであっても、ＲＦＩＤリーダライタ２００は、それのリード／ライトができる。
【００９０】
ＲＦＩＤリーダライタ２００は、データコマンド処理部２１０と、フレーム生成／解析部３００と、ＲＦ変調／復調部２２０と、アンテナ部２３０とを備える。
【００９１】
データコマンド処理部２１０は、ＣＰＵを備え、フレーム生成／解析部３００、ＲＦ変調／復調部２２０の制御や、ＲＦＩＤタグ６００に送信するデータフレームに含まれるペイロードをフレーム生成／解析部３００への供給、およびフレーム生成／解析部３００からのペイロードの処理などを行う。
【００９２】
フレーム生成／解析部３００は、デジタル回路により構成されたチップであり、データコマンド処理部２１０からのペイロードを受け取って、ＲＦＩＤタグ６００に送信するデータフレームを生成してＲＦ変調／復調部２２０に出力する。また、フレーム生成／解析部３００は、ＲＦ変調／復調部２２０からのデータフレームに対して解析処理を行ってペイロードを得てデータコマンド処理部２１０に出力する。
【００９３】
ＲＦ変調／復調部２２０は、アナログ回路であり、フレーム生成／解析部３００からのデータフレームに対してＲＦ変調を行ってアンテナ部２３０に出力する。また、ＲＦ変調／復調部２２０は、アンテナ部２３０が受信した電波信号をデータフレームに復調してフレーム生成／解析部３００に出力する。さらに、ＲＦ変調／復調部２２０は、データフレームを復調する際に、当該データフレームの種類（プロトコルの種類、および当該プロトコルにおけるデータフォーマット種類）をデータコマンド処理部２１０に通知する。
【００９４】
アンテナ部２３０は、複数の周波数帯域に対応し、上述した各プロトコルの電波信号の送受信ができる。
【００９５】
図１２は、フレーム生成／解析部３００を示す。フレーム生成／解析部３００は、データコマンド処理部２１０と接続するインタフェース３１０と、ＲＦ変調／復調部２２０と接続するインタフェース３２０と、フレーム生成回路４００と、フレーム解析回路５００を備える。
【００９６】
インタフェース３１０は、データコマンド処理部２１０からのペイロードに対してパラレル／シリアル変換してフレーム生成回路４００に出力すると共に、フレーム解析回路５００からのペイロードに対してシリアル／パラレル変換してデータコマンド処理部２１０に出力する。
【００９７】
フレーム生成回路４００は、インタフェース３１０を介してデータコマンド処理部２１０からのペイロードからデータフレームを生成してインタフェース３２０に出力する。
【００９８】
フレーム解析回路５００は、インタフェース３２０からのデータフレームを解析してペイロードを得てインタフェース３１０に出力する。
【００９９】
インタフェース３２０は、フリップフロップを備え、フレーム生成／解析部３００とＲＦ変調／復調部２２０の処理のタイミング合わせなどを行う。
【０１００】
図１３は、フレーム生成回路４００を示す。フレーム生成回路４００は、本発明のフレーム処理回路をフレームの生成処理に適用したものであり、パス可能に順次接続された第１〜第５の５つのブロックからなる。
【０１０１】
第１のブロック４１０は、ＣＲＣ処理を実行可能であり、スイッチ４１２と、レジスタ群４１４と、ＣＲＣ処理部４１６と、バイパス４１９を備える。レジスタ群４１４は、ＣＲＣ処理をパスするか否かの設定値を格納するパス設定レジスタと、ＣＲＣ処理方式を示す設定値を格納する処理方式レジスタとを含む。これらのレジスタは、データコマンド処理部２１０により、生成するフレームの種類に応じて設定される。
【０１０２】
ここでは、ＣＲＣ処理方式は、ペイロードに追加するＣＲＣデータのビット数を意味し、本実施の形態では、２つの処理方式に対応する。例えばＣＲＣ処理部４１５は、１６ビットのＣＲＣデータを追加するものであり、ＣＲＣ処理部４１６は、５ビットのＣＲＣデータを追加するものである。
【０１０３】
スイッチ４１２は、レジスタ群４１４の各レジスタを参照して、インタフェース３１０を介してデータコマンド処理部２１０から受信したペイロードを、ＣＲＣ処理部４１５、ＣＲＣ処理部４１６、バイパス４１９のいずれに出力するかの切替えを行う。具体的には、パス設定レジスタに「パスする」と設定されている場合には、スイッチ４１２は、バイパス４１９に切り替えることにより、ペイロードをそのまま後段の第２のブロック４２０に出力する。一方、「パスしない」と設定されている場合には、スイッチ４１２は、処理方式設定レジスタに設定されたＣＲＣ処理方式に対応するＣＲＣ処理部に切り替える。当該ＣＲＣ処理部は、受け取ったペイロードにＣＲＣデータを追加した第２のブロック４２０に出力する。
【０１０４】
すなわち、第１のブロック４１０は、パス可能／処理方式変更可能処理ブロックである。スイッチ４１２は、パススイッチと方式スイッチを兼ねている。
【０１０５】
第２のブロック４２０は、パス可能ブロックであり、第１のブロック４１０から受け取ったデータをそのまま第３のブロック４３０に出力するか、パリティ処理を行って出力する。第２のブロック４２０は、スイッチ４２２と、レジスタ４２４と、パリティ処理部４２６と、バイパス４２９を備える。パリティ処理部４２６は、パリティ処理を実行するものである。レジスタ４２４は、パス設定レジスタであり、パリティ処理部４２６の処理をパスするか否かの設定値を格納している。なお、レジスタ４２４も、データコマンド処理部２１０により、生成するフレームの種類に応じて設定される。
【０１０６】
スイッチ４２２は、パススイッチであり、レジスタ４２４を参照して、第１のブロック４１０からのデータをパリティ処理部４２６に出力するかバイパス４２９に出力するかの切替えを行う。バイパス４２９に切り替えた場合、第１のブロック４１０からのデータは、パリティ処理が施されずに、そのまま第３のブロック４３０に出力される。パリティ処理部４２６に切り替えた場合、第１のブロック４１０からのデータは、パリティ処理部４２６によりパリティ処理が施された後に第３のブロック４３０に出力される。
【０１０７】
第３のブロック４３０は、パス可能／処理方式変更可能ブロックであり、スイッチ４３２と、レジスタ群４３４と、４つのエンコーダ４３５〜４３８と、バイパス４３９を備える。エンコーダ４３５〜４３８は、異なるエンコード方式でエンコードするものである。レジスタ群４３４は、エンコードするか否か、すなわち全てのエンコーダ４３５〜４３８をパスするか否かの設定値を格納するパス設定レジスタと、エンコードする場合（パスしない場合）に、エンコード方式を示す設定値を格納する処理方式レジスタを含む。これらのレジスタは、データコマンド処理部２１０により、生成するフレームの種類に応じて設定される。
【０１０８】
スイッチ４３２は、パススイッチと方式スイッチを兼ねており、レジスタ群４３４の各レジスタの設定値を参照して、第２のブロック４２０からのデータを、エンコーダ４３５、エンコーダ４３６、エンコーダ４３７、エンコーダ４３８、バイパス４３９のいずれに出力するかの切替えを行う。具体的には、「パスする」と設定されている場合には、スイッチ４３２は、バイパス４３９に切り替える。これにより、第２のブロック４２０からのデータは、バイパス４３９によりそのまま後段の第４のブロック４４０に出力される。
【０１０９】
また、「パスしない」と設定されている場合には、スイッチ４３２は、設定されたエンコード方式に対応するエンコーダに切り替える。当該エンコーダは、受け取ったデータをエンコードして第４のブロック４４０に出力する。
【０１１０】
第４のブロック４４０は、パス可能／パラメータ変更可能ブロックであり、スイッチ４４２と、レジスタ群４４４と、ヘッダ処理部４４６と、バイパス４４９を備える。レジスタ群４４４は、ヘッダ処理部４４６によるヘッダ処理をパスするか否かの設定値を格納するパス設定レジスタと、パスしない場合に必要なパラメータを格納するパラメータレジスタを含む。なお、ヘッダ処理部４４６が行うヘッダ処理は、フレームの生成処理における先頭データ処理であり、そのためのパラメータは、先頭データのビット数と、先頭データのデータ値である。これらの設定値およびパラメータは、データコマンド処理部２１０により、生成するデータフレームの種類に応じて設定される。また、先頭データまたは先頭データの一部がエンコードされたものに規定されたフレームの場合には、当該部分についてエンコードされるものが設定される。
【０１１１】
スイッチ４４２は、パススイッチであり、レジスタ群４４４の各レジスタを参照して、第３のブロック４３０からのデータを、ヘッダ処理部４４６、バイパス４４９のいずれに出力するかの切替えを行う。具体的には、「パスする」と設定されている場合には、スイッチ４４２は、バイパス４４９に切り替える。これにより、第３のブロック４３０からのデータはバイパス４４９によりそのまま後段の第５のブロック４５０に出力される。また、「パスしない」と設定されている場合には、スイッチ４４２は、ヘッダ処理部４４６に切り替える。ヘッダ処理部４４６は、パラメータレジスタから、設定されたビット数のデータを読み出して、第３のブロック４３０からのデータに追加して第５のブロック４５０に出力する。
【０１１２】
第５のブロック４５０も、パス可能／パラメータ変更可能ブロックであり、スイッチ４５２と、レジスタ群４５４と、ＥＯＦ処理部４５６と、バイパス４５９を備える。レジスタ群４５４は、ＥＯＦ処理部４５６によりＥＯＦ処理をパスするか否かの設定値を格納するパス設定レジスタと、パスしない場合に必要なパラメータを格納するパラメータレジスタを含む。なお、ＥＯＦ処理部４５６が行うＥＯＦ処理は、フレームの生成処理における終端データ処理であり、そのためのパラメータは、終端データのビット数と、終端データのデータ値である。これらの設定値およびパラメータは、データコマンド処理部２１０により、生成するデータフレームの種類に応じて設定される。また、終端データまたは終端データの一部がエンコードされたものに規定されたフレームの場合には、当該部分についてエンコードされるものが設定される。
【０１１３】
スイッチ４５２は、パススイッチであり、レジスタ群４５４の各レジスタを参照して、第４のブロック４４０からのデータを、ＥＯＦ処理部４５６、バイパス４５９のいずれに出力するかの切替えを行う。具体的には、「パスする」と設定されている場合には、スイッチ４５２は、バイパス４５９に切り替える。これにより、第４のブロック４４０からのデータはバイパス４５９によりそのままデータフレームとして出力される。また、「パスしない」と設定されている場合には、スイッチ４５２は、ＥＯＦ処理部４５６に切り替える。ＥＯＦ処理部４５６は、パラメーラレジスタから、設定されたビット数のデータを読み出して、第４のブロック４４０からのデータに追加してデータフレームとして出力する。
【０１１４】
このように、本実施の形態におけるフレーム生成回路４００は、ＣＲＣ処理、パリティ処理、エンコード、先頭データ処理、終端データ処理に夫々対応する５つの処理ブロックを備え、各処理ブロックは、パス可能である。また、データフレームの種類によって処理に用いられるパラメータが異なる処理ブロック（例えば第４のブロック４４０と第５のブロック４５０）は、パラメータ変更可能に構成されている。さらに、データフレームの種類によって処理方式が異なる処理ブロック（例えば第１のブロック４１０と第３のブロック４３０）は、処理方式毎に本処理部（例えば、第２のブロック４２０におけるＣＲＣ処理部４１５とＣＲＣ処理部４１６や、第３のブロック４３０におけるエンコーダ４３５〜４３８）が備えられ、処理方式変更可能に構成されている。
【０１１５】
図１４は、ＲＦＩＤリーダライタ２００におけるフレーム解析回路５００を示す。フレーム解析回路５００は、本発明のフレーム処理回路をフレームの解析処理に適用したものであり、パス可能に順次接続された第１〜第５の５つのブロックからなる。
【０１１６】
第１のブロック５１０は、パス可能／パラメータ変更可能ブロックであり、スイッチ５１２と、レジスタ群５１４と、ヘッダ処理部５１６と、バイパス５１９を備える。レジスタ群５１４は、ヘッダ処理部５１６によるヘッダ処理をパスするか否かの設定値を格納するパス設定レジスタと、パスしない場合に必要なパラメータを格納するパラメータレジスタを含む。なお、ヘッダ処理部５１６が行うヘッダ処理は、解析処理時の先頭データ処理であり、そのためのパラメータは、先頭データのビット数と、先頭データの期待値と、先頭データ処理における解析結果を出力するか否かを示す情報を含む。前述したように、ＲＦ変調／復調部２２０は、受信信号をデータフレームに復調する際にその種類をデータコマンド処理部２１０に通知する。データコマンド処理部２１０は、通知された種類に応じて、各ブロックのレジスタを設定する。なお、先頭データの期待値については、データコマンド処理部２１０は、データフレームを送信時に当該レジスタに対して設定する。
【０１１７】
先頭データ処理時における解析結果を出力するか否かについて、図５に戻って説明する。図５に示すように、ＩＳＯ１８０９２の場合、先頭データには、Ｐｒｅａｍｂｌｅ、ＳＹＮＣ、ＬＥＮＧＴＨが含まれている。このうち、ＳＹＮＣは、極性（Ｐｏｌａｒｉｔｙ）を示すものであり、デコード時に必要なデータである。そのため、ＩＳＯ１８０９２のデータフレームの解析処理において、先頭データ処理によって得られたＰｏｌａｒｉｔｙを後段に出力する必要がある。データコマンド処理部２１０は、通知されたデータフレームの種類がＩＳＯ１８０９２の基本フレームである場合に、第１のブロック５１０のレジスタ群５１４に含まれる当該レジスタに対して、解析結果であるＰｏｌａｒｉｔｙを出力するように設定する。また、デコード時にＬＥＮＧＴＨも必要であるため、データコマンド処理部２１０は、ＬＥＮＧＴＨも出力するように設定する。
【０１１８】
スイッチ５１２は、レジスタ群５１４に含まれるパス設定レジスタを参照してヘッダ処理部５１６とバイパス５１９の切替えを行う。バイパス５１９に切り替えられた場合には、ＲＦ変調／復調部２２０からのデータフレームは、バイパス５１９によりそのまま第２のブロック５２０に出力される。ヘッダ処理部５１６に切り替えられた場合には、ヘッダ処理部５１６は、レジスタ群５１４に含まれるパラメータレジスタを参照して、ＲＦ変調／復調部２２０からのデータフレームに対して先頭データ処理を行って第２のブロック５２０に出力する。
【０１１９】
第２のブロック５２０は、パス可能／パラメータ変更可能ブロックであり、スイッチ５２２と、レジスタ群５２４と、ＥＯＦ処理部５２６と、バイパス５２９を備える。レジスタ群５２４には、パス設定レジスタとパラメータレジスタが含まれており、スイッチ５２２は、パス設定レジスタを参照してＥＯＦ処理部５２６とバイパス５２９の切替えを行う。バイパス５２９に切り替えられた場合には、第１のブロック５１０からのデータは、バイパス５２９によりそのまま第３のブロック５３０に出力される。ＥＯＦ処理部５２６に切り替えられた場合には、ＥＯＦ処理部５２６は、パラメータレジスタを参照して、第１のブロック５１０からのデータに対して解析処理時の終端データ処理を行って第３のブロック５３０に出力する。
【０１２０】
第３のブロック５３０は、パス可能／処理方式変更可能ブロックであり、スイッチ５３２と、レジスタ群５３４と、デコーダ５３５と、デコーダ５３６と、バイパス５３９を備える。レジスタ群５３４には、パス設定レジスタと処理方式レジスタが含まれており、スイッチ５３２は、それらを参照してデコーダ５３５と、デコーダ５３６と、バイパス５３９の切替えを行う。バイパス５３９に切り替えられた場合には、第２のブロック５２０からのデータは、デコード処理を経ずにバイパス５３９によりそのまま第４のブロック５４０に出力される。デコーダ５３５またはデコーダ５３６に切り替えられた場合には、当該デコーダは、第２のブロック５２０からのデータに対してデコードを行って第４のブロック５４０に出力する。
【０１２１】
例えば、ＩＳＯ１４４４３Ａのプロトコルの基本フレームの場合、第２のブロック５２０から第３のブロック５３０に、ペイロードとＣＲＣのみ、すなわちＰＡＹＣＲＣのみが出力される。一方、ＩＳＯ１８０９２の場合、第２のブロック５２０から第３のブロック５３０に、ＰＡＹＣＲＣ以外に、ＰｏｌａｒｉｔｙとＬＥＮＧＴＨが出力される。そのため、ＩＳＯ１８０９２のＰＡＹＣＲＣのデコードに際して、ＩＳＯ１４４４３Ａの場合の処理方式と異なり、ＬＥＮＧＴＨを検出して、Ｐｏｌａｒｉｔｙと、検出したＬＥＮＧＴＨとを参照して、ＰＡＹＣＲＣをデコードする。いずれの処理方式でデコードするかは、処理方式パラメータに設定されているため、スイッチ５２２により当該処理方式に対応するデコーダに切り替えることにより、デコード方式が異なるデータフレームのデコードも対応可能である。
【０１２２】
第４のブロック５４０は、パス可能ブロックであり、スイッチ５４２と、レジスタ５４４と、パリティ処理部５４６と、バイパス５４９を備える。レジスタ５４４は、パス設定レジスタであり、スイッチ５４２は、レジスタ５４４を参照して、パリティ処理部５４６と、バイパス５４９の切替えを行う。バイパス５４９に切り替えられた場合には、第３のブロック５３０からのデータは、バイパス５４９によりそのまま第５のブロック５５０に出力される。パリティ処理部５４６に切り替えられた場合には、パリティ処理部５４６は、第３のブロック５３０からのデータに対してパリティ処理を行ってパリティビットを削除して第５のブロック５５０に出力する。
【０１２３】
第５のブロック５５０は、パス可能／処理方式変更可能ブロックであり、スイッチ５５２と、レジスタ群５５４と、ＣＲＣ処理部５５５と、ＣＲＣ処理部５５６と、バイパス５５９を備える。レジスタ群５５４には、パス設定レジスタと処理方式レジスタが含まれており、スイッチ５５２は、それらを参照してスイッチ５５２と、レジスタ群５５４と、バイパス５５９の切替えを行う。バイパス５５９に切り替えられた場合には、第４のブロック５４０からのデータは、ＣＲＣ処理を経ずにバイパス５５９によりそのままペイロードとして出力される。ＣＲＣ処理部５５５またはＣＲＣ処理部５５６に切り替えられた場合には、当該ＣＲＣ処理部は、第４のブロック５４０からのデータに対してＣＲＣ処理を行い、ペイロードを得て出力する。
【０１２４】
なお、第１のブロック５１０〜第５のブロック５５０は、パスしない場合の処理時にエラーを検出した際に、データコマンド処理部２１０にエラー信号を出力する。これをもって解析処理は中断される。
【０１２５】
このように、本実施の形態におけるフレーム解析回路５００は、先頭データ処理、終端データ処理、デコード、パリティ処理、ＣＲＣ処理に夫々対応する５つの処理ブロックを備え、各処理ブロックは、パス可能である。また、データフレームの種類によって処理に用いられるパラメータが異なる処理ブロック（例えば第１のブロック５１０と第２のブロック５２０）は、パラメータを変更可能に構成されている。さらに、データフレームの種類によって処理方式が異なる処理ブロック（例えば第３のブロック５３０と第５のブロック５５０）は、処理方式毎に本処理部（例えば、第３のブロック５３０におけるデコーダ５３５とデコーダ５３６や、第５のブロック５５０におけるＣＲＣ処理部５５５とＣＲＣ処理部５５６）が備えられ、処理方式を変更可能に構成されている。
【０１２６】
図１５と図１６は、フレーム生成回路４００が、上記５つのプロトコル毎のデータフレームを生成する流れを示す。分かりやすいように、全てのプロトコルについて基本フレームのみを説明する。
【０１２７】
図１５に示すように、ＩＳＯ１４４４３Ａの基本フレームの生成に際して、第１のブロック４１０によるＣＲＣ処理（Ｓ１００）、第２のブロック４２０によるパリティ処理（Ｓ１０２）、第３のブロック４３０によるエンコード処理（Ｓ１０４）、第４のブロック４４０による先頭データ処理（Ｓ１０６）、第５のブロック４５０による終端データ処理（Ｓ１０８）が順次実行される。
【０１２８】
ＩＳＯ１５６９３の基本フレームの生成に際して、第１のブロック４１０によるＣＲＣ処理（Ｓ１００）、第３のブロック４３０によるエンコード処理（Ｓ１０４）、第４のブロック４４０による先頭データ処理（Ｓ１０６）、第５のブロック４５０による終端データ処理（Ｓ１０８）が順次実行される。第２のブロック４２０によるパリティ処理（Ｓ１０２）がパスされる。
【０１２９】
ＩＳＯ１８０９２の基本フレームの生成に際して、第１のブロック４１０によるＣＲＣ処理（Ｓ１００）、第２のブロック４２０によるパリティ処理（Ｓ１０２）、第３のブロック４３０によるエンコード処理（Ｓ１０４）、第４のブロック４４０による先頭データ処理（Ｓ１０６）が順次実行され、第５のブロック４５０による終端データ処理（Ｓ１０８）がパスされる。
【０１３０】
また、図１６に示すように、ＩＳＯ１８０００−６の基本フレームの生成に際して、第１のブロック４１０によるＣＲＣ処理（Ｓ１００）、第３のブロック４３０によるエンコード処理（Ｓ１０４）、第４のブロック４４０による先頭データ処理（Ｓ１０６）が順次実行され、第２のブロック４２０によるパリティ処理（Ｓ１０２）と、第５のブロック４５０による終端データ処理（Ｓ１０８）とがパスされる。
【０１３１】
ＩＳＯ１８０００−４の基本フレームの生成に際して、第１のブロック４１０によるＣＲＣ処理（Ｓ１００）、第３のブロック４３０によるエンコード処理（Ｓ１０４）、第４のブロック４４０による先頭データ処理（Ｓ１０６）が順次実行され、第２のブロック４２０によるパリティ処理（Ｓ１０２）と、第５のブロック４５０による終端データ処理（Ｓ１０８）とがパスされる。
【０１３２】
また、Ｓ１００〜Ｓ１０８の各ステップのうちの、プロトコルによって処理に用いられるパラメータが異なるステップについては、当該プロトコルに対応するパラメータが用いられ、プロトコルによって処理方式が異なるステップについては、当該プロトコルに対応する処理方式で処理が実行される。
【０１３３】
図１７と図１８は、フレーム解析回路５００が、上記５つのプロトコル毎のデータフレームを解析する流れを示す。ここも、全てのプロトコルについて基本フレームのみを説明する。
【０１３４】
図１７に示すように、ＩＳＯ１４４４３Ａの基本フレームの解析に際して、第１のブロック５１０による先頭データ処理（Ｓ１１０）、第２のブロック５２０による終端データ処理（Ｓ１１２）、第３のブロック５３０によるデコード処理（Ｓ１１４）、第４のブロック５４０によるパリティ処理（Ｓ１１６）、第５のブロック５５０によるＣＲＣ処理（Ｓ１１８）が順次実行される。
【０１３５】
ＩＳＯ１５６９３の基本フレームの解析に際して、第１のブロック５１０による先頭データ処理（Ｓ１１０）、第２のブロック５２０による終端データ処理（Ｓ１１２）、第３のブロック５３０によるデコード処理（Ｓ１１４）、第５のブロック５５０によるＣＲＣ処理（Ｓ１１８）が順次実行され、第４のブロック５４０によるパリティ処理（Ｓ１１６）がパスされる。
【０１３６】
ＩＳＯ１８０９２の基本フレームの解析に際して、第１のブロック５１０による先頭データ処理（Ｓ１１０）、第３のブロック５３０によるデコード処理（Ｓ１１４）、第４のブロック５４０によるパリティ処理（Ｓ１１６）、第５のブロック５５０によるＣＲＣ処理（Ｓ１１８）が順次実行され、第２のブロック５２０による終端データ処理（Ｓ１１２）がパスされる。また、ＩＳＯ１８０９２の場合、先頭データ処理（Ｓ１１０）時にＳＹＮＣから得た極性データ（Ｐｏｌａｒｉｔｙ）は、第３のブロック５３０に渡され、デコードに用いられる。デコード処理（Ｓ１１４）に際しては、ＬＥＮＧＴＨの検出も行われる。
【０１３７】
図１８に示すように、ＩＳＯ１８０００−６の基本フレームの解析に際して、第１のブロック５１０による先頭データ処理（Ｓ１１０）、第２のブロック５２０による終端データ処理（Ｓ１１２）、第３のブロック５３０によるデコード処理（Ｓ１１４）、第５のブロック５５０によるＣＲＣ処理（Ｓ１１８）が順次実行され、第４のブロック５４０によるパリティ処理（Ｓ１１６）がパスされる。
【０１３８】
ＩＳＯ１８０００−４の基本フレームの解析に際して、第１のブロック５１０による先頭データ処理（Ｓ１１０）、第３のブロック５３０によるデコード処理（Ｓ１１４）、第５のブロック５５０によるＣＲＣ処理（Ｓ１１８）が順次実行され、第２のブロック５２０による終端データ処理（Ｓ１１２）と、第４のブロック５４０によるパリティ処理（Ｓ１１６）がパスされる。
【０１３９】
また、Ｓ１１０〜Ｓ１１８の各ステップのうちの、プロトコルによって処理に用いられるパラメータが異なるステップについては、当該プロトコルに対応するパラメータが用いられ、プロトコルによって処理方式が異なるステップについては、当該プロトコルに対応する処理方式で処理が実行される。
【０１４０】
このように、本実施の形態におけるフレーム生成／解析部３００は、ＩＳＯ１４４４３Ａ、ＩＳＯ１５６９３、ＩＳＯ１８０９２、ＩＳＯ１８０００−６、ＩＳＯ１８０００−４の複数のプロトコルに対応し、各プロトコルにおける種々のフォーマットのデータフレームの生成、解析ができる。また、生成処理と解析処理を複数のステップに分け、夫々のステップの処理を担う処理ブロックをパス可能に構成し、データフレームの種類に応じて必要な処理ブロックのみを実行させるようにすることにより、各種データフレーム間で共有できる処理ブロックを最大限に共有できる。そのため、データフレームの種類ごとに生成処理部と解析処理部を設ける従来の技術より、回路規模を抑制することができる。さらに、ハードウェアで生成処理と解析処理を行うので、処理の高速化を図ることができる。
【０１４１】
以上、実施の形態をもとに本発明を説明した。実施の形態は例示であり、本発明の主旨から逸脱しない限り、さまざまな変更、増減を加えてもよい。これらの変更、増減が加えられた変形例も本発明の範囲にあることは当業者に理解されるところである。
【０１４２】
例えば、ＲＦＩＤリーダライタ２００は、複数のプロトコルに対応するものであるが、本発明の技術は、単一のプロトコルにおける異なるフォーマットのデータフレームのフレーム処理にも適用することができる。
【０１４３】
また、ＲＦＩＤリーダライタ２００は、将来新しく出現するプロトコルのために全ての処理ブロックをパス可能に構成している。例えば、上記に例挙した５つのプロトコルにのみ対応する場合には、先頭データ処理を担う処理ブロックについて、パスできる構成にしなくてもよい。
【０１４４】
また、本実施の形態は、本発明の技術をＲＦＩＤリーダライタに適用したものであるが、本発明の技術は、ＲＦＩＤタグに適用してもよい。
【０１４５】
なお、分かりやすいように、フレーム生成処理を担う部分と、フレーム解析処理を担う部分の動作を別々に説明したが、本発明の技術を適用したＲＦＩＤ装置において、フレーム生成処理を担う部分と、フレーム解析処理を担う部分は、並行して動作可能である。
【図面の簡単な説明】
【０１４６】
【図１】ＩＳＯ１４４４３Ａの基本フレームの生成処理を説明するための図である。
【図２】ＩＳＯ１４４４３Ａのショートフレームの生成処理を説明するための図である。
【図３】ＩＳＯ１４４４３Ａの基本フレームの解析処理を説明するための図である。
【図４】ＩＳＯ１４４４３Ａのショートフレームの解析処理を説明するための図である。
【図５】複数のプロトコルのデータフレームの構成例を示す図である。
【図６】本発明の原理を説明するためのフレーム処理回路の模式図である。
【図７】図６に示すフレーム処理回路が対象とする３種類のフレームに対するフレーム処理の内容を示す図である。
【図８】図６に示すフレーム処理回路におけるパス可能ブロックを示す図である。
【図９】図６に示すフレーム処理回路におけるパラメータ変更可能ブロックを示す図である。
【図１０】図６に示すフレーム処理回路における処理方式変更可能ブロックを示す図である。
【図１１】本発明の実施の形態にかかるＲＦＩＤシステムを示す図である。
【図１２】図１１に示すＲＦＩＤシステムにおけるフレーム生成／解析部を示す図である。
【図１３】図１２に示すフレーム生成／解析部におけるフレーム生成回路を示す図である。
【図１４】図１２に示すフレーム生成／解析部におけるフレーム解析回路を示す図である。
【図１５】図１３に示すフレーム生成回路による各種プロトコルの基本フレームの生成処理の流れを示す図である（その１）。
【図１６】図１３に示すフレーム生成回路による各種プロトコルの基本フレームの生成処理の流れを示す図である（その２）。
【図１７】図１４に示すフレーム解析回路による各種プロトコルの基本フレームの解析処理の流れを示す図である（その１）。
【図１８】図１４に示すフレーム解析回路による各種プロトコルの基本フレームの解析処理の流れを示す図である（その２）。
【図１９】ＩＳＯ１４４４３Ａの基本フレームとショートフレームのフォーマットを示す図である。
【図２０】従来のＲＦＩＤシステムを示す図である。
【図２１】図２０に示すＲＦＩＤシステムにおけるＲＦＩＤタグを示す図である。
【符号の説明】
【０１４７】
５０  フレーム処理回路  ６０  処理ブロック
７０  パス可能ブロック  ７２  パス設定レジスタ
７４  パススイッチ  ７６  本処理部
７８  バイパス  ８０  パラメータ変更可能ブロック
８２  パラメータレジスタ  ８４  本処理部
９０  処理方式変更可能ブロック  ９２  処理方式レジスタ
９４  方式スイッチ  ９６  第１の本処理部
９７  第２の本処理部  １００  ＲＦＩＤシステム
２００  ＲＦＩＤリーダライタ  ２１０  データコマンド処理部
２２０  ＲＦ変調／復調部  ２３０  アンテナ部
３００  フレーム生成／解析部  ３１０  インタフェース
３２０  インタフェース  ４００  フレーム生成回路
４１０  第１のブロック  ４１２  スイッチ
４１４  レジスタ群  ４１５  ＣＲＣ処理部
４１６  ＣＲＣ処理部  ４１９  バイパス
４２０  第２のブロック  ４２２  スイッチ
４２４  レジスタ  ４２６  パリティ処理部
４２９  バイパス  ４３０  第３のブロック
４３２  スイッチ  ４３４  レジスタ群
４３５  エンコーダ  ４３６  エンコーダ
４３７  エンコーダ  ４３８  エンコーダ
４３９  バイパス  ４４０  第４のブロック
４４２  スイッチ  ４４４  レジスタ群
４４６  ヘッダ処理部  ４４９  バイパス
４５０  第５のブロック  ４５２  スイッチ
４５４  レジスタ群  ４５６  ＥＯＦ処理部
４５９  バイパス  ５００  フレーム解析回路
５１０  第１のブロック  ５１２  スイッチ
５１４  レジスタ群  ５１６  ヘッダ処理部
５１９  バイパス  ５２０  第２のブロック
５２２  スイッチ  ５２４  レジスタ群
５２６  ＥＯＦ処理部  ５２９  バイパス
５３０  第３のブロック  ５３２  スイッチ
５３４  レジスタ群  ５３５  デコーダ
５３６  デコーダ  ５３９  バイパス
５４０  第４のブロック  ５４２  スイッチ
５４４  レジスタ  ５４６  パリティ処理部
５４９  バイパス  ５５０  第５のブロック
５５２  スイッチ  ５５４  レジスタ群
５５５  ＣＲＣ処理部  ５５６  ＣＲＣ処理部
５５９  バイパス  ６００  ＲＦＩＤタグ
【図１】
2010081371.tif 000003
【図２】
2010081371.tif 000004
【図３】
2010081371.tif 000005
【図４】
2010081371.tif 000006
【図５】
2010081371.tif 000007
【図６】
2010081371.tif 000008
【図７】
2010081371.tif 000009
【図８】
2010081371.tif 000010
【図９】
2010081371.tif 000011
【図１０】
2010081371.tif 000012
【図１１】
2010081371.tif 000013
【図１２】
2010081371.tif 000014
【図１３】
2010081371.tif 000015
【図１４】
2010081371.tif 000016
【図１５】
2010081371.tif 000017
【図１６】
2010081371.tif 000018
【図１７】
2010081371.tif 000019
【図１８】
2010081371.tif 000020
【図１９】
2010081371.tif 000021
【図２０】
2010081371.tif 000022
【図２１】
2010081371.tif 000023