以下、図面を参照して、本発明の実施の形態について説明する。
最初に従来の技術について説明する。
リーダ/ライタから非接触ICカードに送信される信号の形式、または、非接触ICカードからリーダ/ライタに送信される信号の形式は、例えば、ISO14443、ISO18092等の規格により定められている。これらに規定された信号の形式には、3つのタイプが存在する。すなわち、TypeA方式(ISO14443-A)、TypeB方式(ISO14443-B)、TypeC方式(FeliCa方式とも称される)が存在する。
上述した各通信方式により伝送されるデータ値は、通信方式毎に定まるビットコーディング方式により変調されている。なお、変調された信号の中で1ビットのデータを表す1データ期間をetu(Elementary Time Unit)と称することにする。
TypeA方式では、100%ASK変調方式を採用している。TypeA方式では、リーダ/ライタから非接触ICカードに伝送されるデータが、修正ミラーコード(modifaied miller code)符号化方式でビットコーディングされる。なお、TypeA方式の非接触ICカードからリーダ/ライタにデータを送信する場合の符号化方式には、マンチェスタ(Manchester)符号化方式が採用されている。
一方、TypeB方式では、リーダ/ライタから非接触ICカードにデータを送信する場合、1etuごとに、値「1」を表わす振幅のキャリア信号と、90%の振幅をもったキャリア信号で値「0」を表わす10%ASK変調方式を採用している。また、非接触ICカードからリーダ/ライタにデータを送信する場合の変調方式は、BPSK(Binary Phase Shift Keying)とされる。
TypeB方式では、リーダ/ライタから非接触ICカードに伝送されるデータが、NRZ(Non Return to Zero)符号化方式でビットコーディングされる。なお、TypeB方式の非接触ICカードからリーダ/ライタにデータを送信する場合の符号化方式には、NRZ−L(Non Return to Zero Level)符号化方式が採用されている。
FeliCa方式では、リーダ/ライタから非接触ICカードにデータを送信する場合、変調度8%乃至30%のBPSK変調方式とマンチェスタ符号化が採用されている。FeliCa方式では、1etuごとに、「L」レベルから「H」レベル、または「H」レベルから「L」レベルに信号レベルを変化させることにより、データ値「1」又はデータ値「0」を表現するようになされている。
例えば、復調部において、ビットコーディング波形を閾値で1/4etu毎に2値化し、1etu毎に4ビット与えられる2値化信号系列を特定することにより、非接触ICカードから送信されたデータが復調される。
例えば、閾値を、TypeA方式の場合、振幅率50%、TypeB方式の場合、振幅率95%、FeliCa方式の場合、振幅率15%として設定する。波形が閾値以上となる区間を値「1」、閾値以下の区間を値「0」に2値化する。
図1は、TypeA方式、TypeB方式、FeliCa方式のそれぞれの通信方式によるビットコーディングの例を説明する図である。同図においては、横軸を時間、縦軸を信号レベルとし、各シンボル(データ値)に対応する波形が示されている。なお、各波形の下に付された矢印により1etu区間が示されている。
また、同図は、各方式において、リーダ/ライタから非接触ICカードにデータを送信する場合の信号の波形を示すものとされる。
同図に示されるように、TypeA方式におけるデータ値「1」の波形は、1/2etuに対応する時間の経過後に100%ASK変調された波形とされている。すなわち、前半1/2etu区間は搬送波が重畳された振幅の大きい信号とされ、後半1/2etu区間の初期において搬送波が停止されて波形の振幅が小さくなる。
このような波形を、1/4etu区間毎にその振幅率を閾値と比較することで2値化すると、[1,1,0,1]で表わされる2値化信号系列となる。TypeA方式におけるデータ値「1」を表すこの系列は、系列Xと称される。
TypeA方式におけるデータ値「0」の波形の1つは、1etu区間に渡ってASK変調のない信号の波形とされる。
このような波形を、1/4etu区間毎にその振幅率を閾値と比較することで2値化すると、[1,1,1,1]で表わされる2値化信号系列となる。TypeA方式におけるデータ値「0」を表すこの系列は、系列Yと称される。
TypeA方式におけるデータ値「0」の波形の他の1つは、1etu区間の初期に100%ASK変調されて波形の振幅が小さくなり、その後ASK変調されずに波形の振幅が大きくなる波形とされる。
このような波形を、1/4etu区間毎にその振幅率を閾値と比較することで2値化すると、[0,1,1,1]で表わされる2値化信号系列となる。TypeA方式におけるデータ値「0」を表すこの系列は、系列Zと称される。
また、図1に示されるように、TypeB方式におけるデータ値「1」の波形は、1etu区間に渡ってASK変調のない信号の波形とされる。
このような波形を、1/4etu区間毎にその振幅率を閾値と比較することで2値化すると、[1,1,1,1]で表わされる2値化信号系列となる。
TypeB方式におけるデータ値「0」の波形は、1etu区間に渡って10%ASK変調された信号の波形とされる。すなわち、ASK変調されていない信号の場合と比較すると、信号の振幅が90%となるのである。
このような波形を、1/4etu区間毎にその振幅率を閾値と比較することで2値化すると、[0,0,0,0]で表わされる2値化信号系列となる。
FeliCa方式におけるデータ値「1」の波形は、1/2etuに対応する時間の経過後にBPSK変調された波形とされている。すなわち、前半1/2etu区間は振幅の大きい信号とされ、後半1/2etu区間は波形の振幅が小さくなる。
このような波形を、1/4etu区間毎にその振幅率を閾値と比較することで2値化すると、[1,1,0,0]で表わされる2値化信号系列となる。
FeliCa方式におけるデータ値「0」の波形は、前半1/2etu区間においてBPSK変調された波形とされている。すなわち、前半1/2etu区間は振幅の小さい信号とされ、後半1/2etu区間は波形の振幅が大きくなる。
このような波形を、1/4etu区間毎にその振幅率を閾値と比較することで2値化すると、[0,0,1,1]で表わされる2値化信号系列となる。
また、上述した3つの方式では、それぞれ異なる通信開始(フレームヘッド)を表す情報、および通信終了を表す情報が規定されている。
例えば、TypeA方式の場合、予め定められた2値化信号系列が、第1番目の1etuの受信信号として到来することが、通信開始を表す情報とされている。また、TypeA方式の場合、データ値「0」の後に無変調区間が続く2値化信号系列の到来が通信終了を表す情報とされている。
例えば、TypeB方式の場合、SOF(10ビットの値「0」および2ビットの値「1」)の2値化信号系列がフレームヘッドとされている。また、TypeB方式の場合、データ値「1」および10etu分のデータ値「0」の2値化信号系列が通信終了を表す情報とされている。
例えば、FeliCa方式では、通信開始時のPreamble+syncと称される2値化信号系列がフレームヘッドとされている。なお、Preambleは、48ビット以上の値0によって構成される2値化信号系列とされ、Syncは、16進数で「B24D」を表す16ビットに対応する2値化信号系列とされている。また、FeliCa方式では、無変調区間(前半1/2etu、後半1/2etuいずれでも振幅変調なし)の到来が通信終了を表す情報とされる。
図2は、TypeA方式、TypeB方式、FeliCa方式のそれぞれの通信方式における通信開始および通信終了を表す信号の波形を説明する図である。同図においては、横軸を時間、縦軸を信号レベルとし、通信開始を表す信号および通信終了を表す信号に対応する波形が示されている。
また、同図は、各方式において、リーダ/ライタから非接触ICカードにデータを送信する場合の信号の波形を示すものとされる。
TypeA方式における通信開始を表す信号の波形は、第1番目の1etuの受信信号としての系列Zの2値化信号系列に対応する波形とされている。すなわち、1etu区間の初期に100%ASK変調されて波形の振幅が小さくなり、その後ASK変調されずに波形の振幅が大きくなる波形とされる。なお、TypeA方式における通信開始を表すシンボルはSOCとも称される。
また、TypeA方式における通信終了を表す信号の波形は、データ値「0」の後に無変調区間が続く2値化信号系列に対応する波形とされている。図2に示される例では、系列Zの後に系列Y(変調なしのシンボル)が続く2値化信号系列の波形が示されている。なお、TypeA方式における通信終了を表す信号は、系列Yの後に系列Yが続く2値化信号系列とされてもよい。
TypeB方式における通信開始を表す信号の波形は、10ビットのデータ値「0」を表す2値化信号系列および2ビットのデータ値「1」を表す2値化信号系列に対応する信号の波形とされている。このような2値化信号系列がSOFと称される。
また、TypeB方式における通信終了を表す信号の波形は、1ビットのデータ値「1」および10ビットのデータ値「0」を表す2値化信号系列に対応する信号の波形とされる。なお、10ビットのデータ値「0」を表す2値化信号系列がEOFと称される。
FeliCa方式における通信開始を表す信号の波形は、Preamble+syncと称される2値化信号系列に対応する波形とされている。
Preambleは、48ビット以上のデータ値「0」によって構成される2値化信号系列とされる。Syncは、16進数で「B24D」を表す16ビットに対応する2値化信号系列とされる。なお、「B24D」を表す16ビットは、「1011001001001101」となる。
また、FeliCa方式における通信終了を表す信号は、無変調の信号とされる。
このようにそれぞれの通信方式によって通信開始または通信終了を表す信号の波形は異なったものとなる。また、それぞれの通信方式によって通信開始または通信終了を表す信号によって伝送されるデータのビット長(etu数)が異なる。
さらに、ISO14443や、ISO18092によると、TypeA方式、TypeB方式により伝送されるデータのビットレートは、106kbps、212kbps、424kbps、847kbpsの4種類のビットレートが存在する。また、FeliCa方式により伝送されるデータのビットレートは212kbps、424kbpsの2種類のビットレートが存在する。
今後も、非接触ICカードの通信方式の種類および通信レートは増加していく事が見込まれる。
このような状況の中で、従来より、複数の異なる通信方式のリーダ/ライタとの通信が可能となるような非接触ICカードが開発されている。
図3は、従来の非接触ICカードの復調部の構成例を示すブロック図である。この復調部は、TypeA方式、TypeB方式、FeliCa方式のいずれの通信方式にも対応できるように構成されている。また、TypeA方式およびTypeB方式の場合、伝送されるデータのビットレートは106kbpsであり、FeliCa方式の場合、伝送されるデータのビットレートは、212kbpsまたは424kbpsであることを前提として構成されている。
同図に示される復調部10は、アナログ検波部22、TypeA復調部23、TypeB復調部24、FeliCa424kbps復調部26、FeliCa212kbps復調部25を含む構成とされている。また、復調部10には、通信方式選択部27、データ処理部28が設けられている。
アナログ検波部22は、リーダ/ライタから送信された信号をアナログ直交検波、またはアナログ包絡線検波する。アナログ検波部22から出力される検波信号は、信号線d1を介してTypeA復調部23、TypeB復調部24、FeliCa424kbps復調部26、FeliCa212kbps復調部25にそれぞれ供給される。なお、以下では、適宜、信号線d1を介して伝送される信号を信号d1のように記載する。
TypeA復調部23、TypeB復調部24、FeliCa424kbps復調部26、FeliCa212kbps復調部25のそれぞれは、例えば、信号d1を所定のクロックレートでオーバーサンプリングするなどして処理するようになされている。
これにより、TypeA復調部23、TypeB復調部24、FeliCa424kbps復調部26、FeliCa212kbps復調部25のそれぞれでは、信号d1を例えば、1/4etuを基準とする単位区間毎に2値化された2値化信号系列として処理することができる。なお、上述したように各通信方式における変調方式は予め定められているので、TypeA復調部23、TypeB復調部24、FeliCa424kbps復調部26、FeliCa212kbps復調部25のそれぞれでは、各通信方式に対応する閾値を用いて信号d1を2値化する。
TypeA復調部23には、ヘッダ検出部31とデータ復調部32が設けられている。
ヘッダ検出部31は、例えば、振幅率50%を閾値として信号d1を2値化して得られた2値化信号系列に基づいて、TypeA方式における通信開始を表す信号(フレームヘッド)を検出する。すなわち、図2を参照して上述したようなTypeA方式におけるフレームヘッドの検出が行われる。フレームヘッドが検出された場合、検出信号が信号d2として出力される。
データ復調部32は、TypeA方式におけるシンボルの復調を行う。すなわち、振幅率50%を閾値として信号d1を2値化して得られた2値化信号系列に基づいて、図1を参照して上述した系列X、系列Y、系列Zなどのシンボルを検出し、各シンボルに対応づけられたデータ値を信号d3として出力する。
また、データ復調部32は、TypeA方式におけるetuを特定できるようにするためのイネーブルを生成して信号d4として出力する。
同様に、TypeB復調部24には、ヘッダ検出部33とデータ復調部34が設けられている。
ヘッダ検出部33は、例えば、振幅率95%を閾値として信号d1を2値化して得られた2値化信号系列に基づいて、TypeB方式における通信開始を表す信号(フレームヘッド)を検出する。すなわち、図2を参照して上述したようなTypeB方式におけるフレームヘッドであるSOFの検出が行われる。フレームヘッドが検出された場合、検出信号が信号d5として出力される。
データ復調部34は、TypeB方式におけるシンボルの復調を行う。すなわち、振幅率95%を閾値として信号d1を2値化して得られた2値化信号系列に基づいて、図1を参照して上述したシンボルを検出し、各シンボルに対応づけられたデータ値を信号d6として出力する。
また、データ復調部34は、TypeB方式におけるetuを特定できるようにするためのイネーブルを生成して信号d7として出力する。
FeliCa212kbps復調部25には、ヘッダ検出部35とデータ復調部36が設けられている。
ヘッダ検出部35は、例えば、振幅率15%を閾値として信号d1を2値化して得られた2値化信号系列に基づいて、FeliCa方式における通信開始を表す信号(フレームヘッド)を検出する。すなわち、図2を参照して上述したようなFeliCa方式におけるフレームヘッドであるPreamble+syncの検出が行われる。フレームヘッドが検出された場合、検出信号が信号d8として出力される。
データ復調部36は、FeliCa方式におけるシンボルの復調を行う。すなわち、振幅率15%を閾値として信号d1を2値化して得られた2値化信号系列に基づいて、図1を参照して上述したシンボルを検出し、各シンボルに対応づけられたデータ値を信号d9として出力する。
また、データ復調部36は、通信レート212kbpsのFeliCa方式におけるetuを特定できるようにするためのイネーブルを生成して信号d10として出力する。
FeliCa424kbps復調部26には、ヘッダ検出部37とデータ復調部38が設けられている。
ヘッダ検出部37は、例えば、振幅率15%を閾値として信号d1を2値化して得られた2値化信号系列に基づいて、FeliCa方式における通信開始を表す信号(フレームヘッド)を検出する。すなわち、図2を参照して上述したようなFeliCa方式におけるフレームヘッドであるPreamble+syncの検出が行われる。フレームヘッドが検出された場合、検出信号が信号d11として出力される。
データ復調部38は、FeliCa方式におけるシンボルの復調を行う。すなわち、振幅率15%を閾値として信号d1を2値化して得られた2値化信号系列に基づいて、図1を参照して上述したシンボルを検出し、各シンボルに対応づけられたデータ値を信号d12として出力する。
また、データ復調部38は、通信レート424kbpsのFeliCa方式におけるetuを特定できるようにするためのイネーブルを生成して信号d13として出力する。
通信方式選択部27は、信号d2、信号d5、信号d8、および信号d11に基づいて、いずれの通信方式のフレームヘッドが検出されたかを判定する。例えば、信号d2のレベルが「H」となった場合、TypeA方式のフレームヘッドが検出されたと判定され、通信方式選択部27は、非接触ICカードの通信方式(いまの場合、TypeA)を表す信号をデータ処理部28に、信号線d14を介して供給する。
データ処理部28は、信号d14に基づいて通信方式を特定し、特定された通信方式に対応するデータとイネーブルのみの入力を受け付けて処理するようになされている。例えば、信号d14としてTypeAを表す信号が供給された場合、データ処理部28は、信号d4として供給されるイネーブルに基づいて、信号d3として供給されるデータを処理し、それ以外の信号は破棄される。
図4は、復調部10が、リーダ/ライタからTypeA方式の信号を受信した場合の動作を説明するタイミングチャートである。
図4Aは、信号d1の波形を表しており、信号d1をTypeA方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列が図4Bに示されている。この例では、図4Bに、系列Z、系列X、・・・系列X、系列Yの2値化信号系列が示されている。
図4Cには、信号d3の波形により表わされるデータ値が示されている。この例では、「0」、・・・「1」、「1」、「0」のデータ値が示されている。
図4Dには、信号d4の波形が示されている。同図に示されるように、イネーブルである信号d4は、各etuの開始のタイミングを表すパルスとされている。
図4Eには、信号d2の波形が示されている。この例では、信号d2のレベルが「H」となったことにより、TypeA方式のフレームヘッドが検出されたことが示されている。すなわち、TypeA方式のフレームヘッドとして系列Zが検出されたタイミングで、信号d2のレベルが「H」とされたのである。
図4Fには、信号14により表わされる情報が示されている。この例では、信号d2のレベルが「H」となったetuの次のetuからTypeAを表す情報が出力されている。
図4Gには、データ処理部28の内部で生成される動作イネーブルの信号の波形が示されている。この例では、信号14において、TypeAを表す情報が出力されるのと同時に動作イネーブルの信号のレベルが「H」となっている。データ処理部28は、動作イネーブルの信号のレベルが「H」となった後、信号14により表わされる通信方式のデータ(いまの場合、信号d3)を処理するようになされている。
また、信号d1をTypeB方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列が図4Hに示されている。信号d1は、TypeA方式の信号を受信して得られた検波信号なので、信号d1をTypeB方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列から、図1を参照して上述したようなTypeB方式のシンボルを得ることはできない。従って、データ復調部34は、適正にデータを復調することはできない。
図4Iには、信号d6の波形により表わされるデータ値が示されているが、いまの場合、上述したように復調失敗となる。
また、信号d1をFeliCa方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列が図4Jに示されている。なお、図4Jは、通信レート212kbpsに対応するものなので、TypeA方式、TypeB方式の場合と比較して1etu区間に対応する時間が半分になる。このため、図4Jには、「0×2(「0」を表す2値化信号が2つ連続することを意味する)」のように記載されている。
信号d1は、TypeA方式の信号を受信して得られた検波信号なので、信号d1をFeliCa方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列から、図1を参照して上述したようなFeliCa方式のシンボルを得ることはできない。従って、データ復調部36は、適正にデータを復調することはできない。
図4Kには、信号d9の波形により表わされるデータ値が示されているが、上述したように復調できないため、復調失敗となる。
また、信号d1をFeliCa方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列が図4Lに示されている。なお、図4Lは、通信レート424kbpsに対応するものなので、TypeA方式、TypeB方式の場合と比較して1etu区間に対応する時間が1/4になる。このため、図4Lには、「0×4(「0」を表す2値化信号が4つ連続することを意味する)」のように記載されている。
信号d1は、TypeA方式の信号を受信して得られた検波信号なので、信号d1をFeliCa方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列から、図1を参照して上述したようなFeliCa方式のシンボルを得ることはできない。従って、データ復調部38は、適正にデータを復調することはできない。
図4Mには、信号d12の波形により表わされるデータ値が示されているが、上述したように復調できないため、復調失敗となる。
このように、TypeA方式の信号が受信された場合、復調部10のデータ処理部は、TypeA復調部23から供給される信号に基づいてデータを処理することができるのである。
図5は、復調部10が、リーダ/ライタからTypeB方式の信号を受信した場合の動作を説明するタイミングチャートである。
図5Aは、信号d1の波形を表しており、信号d1をTypeB方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列が図5Bに示されている。
図5Cには、信号d6の波形により表わされるデータ値が示されている。この例では、「0」、・・・「0」、「1」、「1」、「0」のデータ値が示されている。
図5Dには、信号d7の波形が示されている。同図に示されるように、イネーブルである信号d7は、各etuの開始のタイミングを表すパルスとされている。
図5Eには、信号d5の波形が示されている。この例では、信号d5のレベルが「H」となったことにより、TypeB方式のフレームヘッドが検出されたことが示されている。すなわち、TypeB方式のフレームヘッドとしてSOFが検出されたタイミングで、信号d5のレベルが「H」とされたのである。
図5Fには、信号14により表わされる情報が示されている。この例では、信号d5のレベルが「H」となったetuの次のetuからTypeBを表す情報が出力されている。
図5Gには、データ処理部28の内部で生成される動作イネーブルの信号の波形が示されている。この例では、信号14において、TypeBを表す情報が出力されるのと同時に動作イネーブルの信号のレベルが「H」となっている。データ処理部28は、動作イネーブルの信号のレベルが「H」となった後、信号14により表わされる通信方式のデータ(いまの場合、信号d6)を処理するようになされている。
また、信号d1をTypeA方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列が図5Hに示されている。信号d1は、TypeB方式の信号を受信して得られた検波信号なので、信号d1をTypeA方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列から、図1を参照して上述したようなTypeA方式のシンボルを得ることはできない。従って、データ復調部32は、適正にデータを復調することはできない。
図5Iには、信号d3の波形により表わされるデータ値が示されているが、いまの場合、上述したように復調失敗となる。
また、信号d1をFeliCa方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列が図5Jに示されている。
信号d1は、TypeB方式の信号を受信して得られた検波信号なので、信号d1をFeliCa方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列から、図1を参照して上述したようなFeliCa方式のシンボルを得ることはできない。従って、データ復調部36は、適正にデータを復調することはできない。
図5Kには、信号d9の波形により表わされるデータ値が示されているが、上述したように復調できないため、復調失敗となる。
また、信号d1をFeliCa方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列が図5Lに示されている。
信号d1は、TypeB方式の信号を受信して得られた検波信号なので、信号d1をFeliCa方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列から、図1を参照して上述したようなFeliCa方式のシンボルを得ることはできない。従って、データ復調部38は、適正にデータを復調することはできない。
図5Mには、信号d12の波形により表わされるデータ値が示されているが、上述したように復調できないため、復調失敗となる。
このように、TypeB方式の信号が受信された場合、復調部10のデータ処理部は、TypeB復調部24から供給される信号に基づいてデータを処理することができるのである。
図6は、復調部10が、リーダ/ライタから通信レート212kbpsのFeliCa方式の信号を受信した場合の動作を説明するタイミングチャートである。
図6Aは、信号d1の波形を表しており、信号d1をFeliCa方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列が図6Bに示されている。なお、同図の場合、図6Aに示される1etu区間が、図6H、図6Jにおける1/2etu区間となり、図6Lにおける2etu区間となる。
図6Cには、信号d9の波形により表わされるデータ値が示されている。この例では、「0」、・・・「0」、「0」、「1」のデータ値が示されている。
図6Dには、信号d10の波形が示されている。同図に示されるように、イネーブルである信号d10は、各etuの開始のタイミングを表すパルスとされている。
図6Eには、信号d8の波形が示されている。この例では、信号d2のレベルが「H」となったことにより、FeliCa方式のフレームヘッドが検出されたことが示されている。すなわち、FeliCa方式のフレームヘッドとしてPreamble+syncが検出されたタイミングで、信号d8のレベルが「H」とされたのである。
図6Fには、信号14により表わされる情報が示されている。この例では、信号d8のレベルが「H」となったetuの次のetuからFeliCa212kbpsを表す情報が出力されている。
図6Gには、データ処理部28の内部で生成される動作イネーブルの信号の波形が示されている。この例では、信号14において、FeliCa212kbpsを表す情報が出力されるのと同時に動作イネーブルの信号のレベルが「H」となっている。データ処理部28は、動作イネーブルの信号のレベルが「H」となった後、信号14により表わされる通信方式のデータ(いまの場合、信号d9)を処理するようになされている。
また、信号d1をTypeA方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列が図6Hに示されている。信号d1は、通信レート212kbpsのFeliCa方式の信号を受信して得られた検波信号なので、信号d1をTypeA方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列から、図1を参照して上述したようなTypeA方式のシンボルを得ることはできない。従って、データ復調部32は、適正にデータを復調することはできない。
図6Iには、信号d3の波形により表わされるデータ値が示されているが、いまの場合、上述したように復調失敗となる。
また、信号d1をTypeB方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列が図6Jに示されている。
信号d1は、通信レート212kbpsのFeliCa方式の信号を受信して得られた検波信号なので、信号d1をFeliCa方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列から、図1を参照して上述したようなTypeB方式のシンボルを得ることはできない。従って、データ復調部34は、適正にデータを復調することはできない。
図6Kには、信号d6の波形により表わされるデータ値が示されているが、上述したように復調できないため、復調失敗となる。
また、信号d1をFeliCa方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列が図6Lに示されている。なお、図6Lの場合は、通信レート424kbpsのものとされる。
信号d1は、通信レート212kbpsのFeliCa方式の信号を受信して得られた検波信号なので、信号d1をFeliCa方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列から、図1を参照して上述したような通信レート424kbpsのFeliCa方式のシンボルを得ることはできない。従って、データ復調部38は、適正にデータを復調することはできない。
図6Mには、信号d12の波形により表わされるデータ値が示されているが、上述したように復調できないため、復調失敗となる。
このように、通信レート212kbpsのFeliCa方式の信号が受信された場合、復調部10のデータ処理部は、FeliCa212kbps復調部25から供給される信号に基づいてデータを処理することができるのである。
しかしながら、フレームヘッドの検出などの際、受信信号の波形または復調結果データにノイズなどが混入した場合、本来の通信方式と異なる通信方式として誤判定されることがある。例えば、受信信号は、TypeB方式の信号であったにもかかわらず、復調部10がTypeA方式の信号を受信したものと誤判定することがある。
図7は、復調部10が、リーダ/ライタからTypeB方式の信号を受信した場合の動作を説明するタイミングチャートである。同図の例は、図5の場合と異なり、受信信号の波形にノイズが含まれるため、正しく復調できない場合について説明するものである。
図7Aは、信号d1の波形を表しており、信号d1をTypeB方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列が図7Bに示されている。図中点線の楕円で囲まれた部分において、信号d1の波形がノイズの影響で歪んでいる。
図7Cには、信号d6の波形により表わされるデータ値が示されている。この例では、「0」、「0」、・・・「1」、「1」、「0」のデータ値が示されている。
図7Dには、信号d5の波形が示されている。この例では、信号d5のレベルが「H」となったことにより、TypeB方式のフレームヘッドが検出されたことが示されている。すなわち、TypeB方式のフレームヘッドとしてSOFが検出されたタイミングで、信号d5のレベルが「H」とされたのである。
図7Eには、データ処理部28の内部で生成される動作イネーブルの信号の波形が示されている。この例では、信号14において、TypeBを表す情報が出力されるのと同時に動作イネーブルの信号のレベルが「H」となっている。データ処理部28は、動作イネーブルの信号のレベルが「H」となった後、本来、TypeB方式のデータ(いまの場合、信号d6)を処理するが、いまの場合、後述するようにその処理が正しく行われないことになる。
図7Fには、信号d1をTypeA方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列が示されている。信号d1は、TypeB方式の信号を受信して得られた検波信号なので、本来、信号d1をTypeA方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列から、図1を参照して上述したようなTypeA方式のシンボルを得ることはできない。
しかしながら、いまの場合、ノイズの影響により信号d1の波形が歪み、その結果、系列Zのシンボルが検出されてしまう。これにより、TypeA方式のフレームヘッドが検出されたものとして、ヘッダ検出部31から所定の信号が出力されることになる。
図7Gには、信号d3の波形により表わされるデータ値が示されている。いまの場合、上述したようにTypeA方式の信号と誤判定されて、「0」、「1」、・・・「0」、「1」、「0」というデータ値が出力されている。
図7Hには、信号d2の波形が示されている。この例では、信号d2のレベルが「H」となったことにより、TypeA方式のフレームヘッドが検出されたことが示されている。すなわち、TypeA方式のフレームヘッドとして系列Zが検出されたタイミングで、信号d2のレベルが「H」とされたのである。
図7Iには、データ処理部28の内部で生成される動作イネーブルの信号の波形が示されている。この例では、信号14において、TypeAを表す情報が出力されるのと同時に動作イネーブルの信号のレベルが「H」となっている。データ処理部28は、動作イネーブルの信号のレベルが「H」となった後、TypeA方式のデータ(信号d3)を処理する。これにより、本来、データ処理部28は、TypeB方式の信号により伝送されたデータ(信号d6)を処理すべきところ、誤って信号d3を処理することになる。
図7Jには、信号14により表わされる情報が示されている。この例では、信号d2のレベルが「H」となったetuの次のetuからTypeAを表す情報が出力され、さらに、信号d5のレベルが「H」となったetuの次のetuからTypeBを表す情報が出力されている。
このような場合、データ処理部28は、例えば、最初は信号d3として出力されたデータを処理し、その後、図7Eの動作イネーブルの信号に基づいて、信号d6として出力されたデータの処理を続けることになる。復調部10がこのように動作すると、当然、正しくデータを処理することはできないのである。
そこで、本発明では、フレームヘッドの検出などの際、ノイズなどの影響により、本来の通信方式と異なる通信方式と誤判定された場合であっても、その後のデータ処理は正しく行うことができるようにする。
図8は、本発明の一実施の形態に係る復調部の構成例を示すブロック図である。同図に示される復調部100は、例えば、非接触ICカードに設けられるICチップの一部の回路などとして構成される。
復調部100は、TypeA方式、TypeB方式、FeliCa方式のいずれの通信方式にも対応できるように構成されている。また、TypeA方式およびTypeB方式の場合、伝送されるデータのビットレートは106kbpsであり、FeliCa方式の場合、伝送されるデータのビットレートは、212kbpsまたは424kbpsであることを前提として構成されている。
同図に示される復調部100は、アナログ検波部102、TypeA復調部103、TypeB復調部104、FeliCa424kbps復調部106、FeliCa212kbps復調部105を含む構成とされている。また、復調部100には、通信方式選択部115、優先度基準決定部116、セレクタ117、FIFO118、およびデータ処理部119が設けられている。
アナログ検波部102は、リーダ/ライタから送信された信号をアナログ直交検波、またはアナログ包絡線検波する。アナログ検波部102から出力される検波信号は、信号線d102を介してTypeA復調部103、TypeB復調部104、FeliCa424kbps復調部106、FeliCa212kbps復調部105にそれぞれ供給される。
TypeA復調部103、TypeB復調部104、FeliCa424kbps復調部106、FeliCa212kbps復調部105のそれぞれは、例えば、信号d102を所定のクロックレートでオーバーサンプリングするなどして処理するようになされている。これにより、TypeA復調部103、TypeB復調部104、FeliCa424kbps復調部106、FeliCa212kbps復調部105のそれぞれでは、信号d102を例えば、1/4etuを基準とする単位区間毎に2値化された2値化信号系列として処理することができる。なお、上述したように各通信方式における変調方式は予め定められているので、TypeA復調部103、TypeB復調部104、FeliCa424kbps復調部106、FeliCa212kbps復調部105のそれぞれでは、各通信方式に対応する閾値を用いて信号d102を2値化する。
TypeA復調部103には、ヘッダ検出部131とデータ復調部132が設けられている。
ヘッダ検出部131は、例えば、振幅率50%を閾値として信号d102を2値化して得られた2値化信号系列に基づいて、TypeA方式における通信開始を表す信号(フレームヘッド)を検出する。すなわち、図2を参照して上述したようなTypeA方式におけるフレームヘッドの検出が行われる。フレームヘッドが検出された場合、検出信号が信号d103として出力される。
また、ヘッダ検出部131は、図2を参照して上述したようなTypeA方式における通信終了を表す信号(EOF)を検出する。EOFが検出された場合、検出信号が信号d107として出力される。
データ復調部132は、TypeA方式におけるシンボルの復調を行う。すなわち、振幅率50%を閾値として信号d102を2値化して得られた2値化信号系列に基づいて、図1を参照して上述した系列X、系列Y、系列Zなどのシンボルを検出し、各シンボルに対応づけられたデータ値を信号d111として出力する。
また、データ復調部132は、TypeA方式におけるetuを特定できるようにするためのイネーブルを生成して信号d115として出力する。
同様に、TypeB復調部104には、ヘッダ検出部133とデータ復調部134が設けられている。
ヘッダ検出部133は、例えば、振幅率95%を閾値として信号d102を2値化して得られた2値化信号系列に基づいて、TypeB方式における通信開始を表す信号(フレームヘッド)を検出する。すなわち、図2を参照して上述したようなTypeB方式におけるフレームヘッドであるSOFの検出が行われる。フレームヘッドが検出された場合、検出信号が信号d105として出力される。
また、ヘッダ検出部133は、図2を参照して上述したようなTypeB方式におけるにおける通信終了を表す信号(EOF)を検出する。EOFが検出された場合、検出信号が信号d108として出力される。
データ復調部134は、TypeB方式におけるシンボルの復調を行う。すなわち、振幅率95%を閾値として信号d102を2値化して得られた2値化信号系列に基づいて、図1を参照して上述したシンボルを検出し、各シンボルに対応づけられたデータ値を信号d112として出力する。
また、データ復調部134は、TypeB方式におけるetuを特定できるようにするためのイネーブルを生成して信号d116として出力する。
FeliCa212kbps復調部105には、ヘッダ検出部135とデータ復調部136が設けられている。
ヘッダ検出部135は、例えば、振幅率15%を閾値として信号d102を2値化して得られた2値化信号系列に基づいて、FeliCa方式における通信開始を表す信号(フレームヘッド)を検出する。すなわち、図2を参照して上述したようなFeliCa方式におけるフレームヘッドであるPreamble+syncの検出が行われる。フレームヘッドが検出された場合、検出信号が信号d105として出力される。
また、ヘッダ検出部135は、図2を参照して上述したようなFeliCa方式におけるにおける通信終了を表す信号(EOF)を検出する。EOFが検出された場合、検出信号が信号d109として出力される。
データ復調部136は、FeliCa方式におけるシンボルの復調を行う。すなわち、振幅率15%を閾値として信号d102を2値化して得られた2値化信号系列に基づいて、図1を参照して上述したシンボルを検出し、各シンボルに対応づけられたデータ値を信号d113として出力する。
また、データ復調部136は、通信レート212kbpsのFeliCa方式におけるetuを特定できるようにするためのイネーブルを生成して信号d117として出力する。
FeliCa424kbps復調部106には、ヘッダ検出部137とデータ復調部138が設けられている。
ヘッダ検出部137は、例えば、振幅率15%を閾値として信号d102を2値化して得られた2値化信号系列に基づいて、FeliCa方式における通信開始を表す信号(フレームヘッド)を検出する。すなわち、図2を参照して上述したようなFeliCa方式におけるフレームヘッドであるPreamble+syncの検出が行われる。フレームヘッドが検出された場合、検出信号が信号d106として出力される。
また、ヘッダ検出部137は、図2を参照して上述したようなFeliCa方式におけるにおける通信終了を表す信号(EOF)を検出する。EOFが検出された場合、検出信号が信号d110として出力される。
データ復調部138は、FeliCa方式におけるシンボルの復調を行う。すなわち、振幅率15%を閾値として信号d102を2値化して得られた2値化信号系列に基づいて、図1を参照して上述したシンボルを検出し、各シンボルに対応づけられたデータ値を信号d114として出力する。
また、データ復調部138は、通信レート424kbpsのFeliCa方式におけるetuを特定できるようにするためのイネーブルを生成して信号d118として出力する。
なお、ここでは、TypeA復調部103、TypeB復調部104、FeliCa424kbps復調部106、FeliCa212kbps復調部105のそれぞれにおいて、信号d102が1/4etu毎に2値化されることを前提として説明した。しかし、例えば、アナログ検波部102において、検波信号を1/4etu毎に2値化して、その2値化信号系列をTypeA復調部103、TypeB復調部104、FeliCa424kbps復調部106、FeliCa212kbps復調部105のそれぞれに供給するようにしてもよい。
通信方式選択部115は、信号d103乃至信号d110に基づいて、いずれの通信方式のフレームヘッドが検出されたかを判定する。例えば、信号d103のレベルが「H」となった場合、TypeA方式のフレームヘッドが検出されたと判定される。
また、通信方式選択部115は、さらに、複数の通信方式のフレームヘッドが検出された場合、優先度基準決定部116から供給される信号d122乃至信号d125に基づいて、いずれの通信方式を優先して選択すべきかを判定する。そして、通信方式選択部115は、その判定結果を表す信号d119を出力するようになされている。
なお、信号d119は、TypeA、TypeB、FeliCa212kbps、FeliCa424kbpsのいずれかの通信方式を表す信号とされ、例えば、2ビットの信号として生成されて出力されるようになされている。すなわち、信号d119は、通信方式選択部115により選択された通信方式を表す信号とされる。
通信方式選択部115は、上述のように優先して選択すべきと判定された通信方式に対応するフレームヘッドの検出信号に基づいてフレームスタート信号を生成し、信号d120として出力する。また、通信方式選択部115は、上述のように優先して選択すべきと判定された通信方式に対応するEOFの検出信号に基づいてフレームエンド信号を生成し、信号d121として出力する。
優先度基準決定部116は、予め定められた優先度基準に基づいて、各通信方式の優先度を表す信号を、信号d122乃至信号d125として出力する。なお、各通信方式の優先度を表す信号の詳細については後述する。
セレクタ117は、信号d119に基づいて、TypeA復調部103、TypeB復調部104、FeliCa424kbps復調部106、またはFeliCa212kbps復調部105のいずれか1つの復調結果の信号を選択して出力するようになされている。セレクタ117により選択された復調結果におけるデータ値の信号(復調データ)として信号d126が出力され、イネーブルとして信号d127が出力される。
FIFO118は、信号d126として供給される復調データを、信号d127のイネーブルに基づいて内部のフリップフロップに保持するようになされている。また、FIFO118は、信号d119により表わされる優先して選択すべき通信方式が変化した場合、それまでフリップフロップに保持されていた復調データを破棄し、新たに復調データを保持するとともに、その通信方式を表す信号(情報)も保持するようになされている。
FIFO118は、信号d121、または予め設定された最大etu数に基づいて、データ処理部119に受信終了を通知するようになされている。
データ処理部119は、FIFO118から受信終了が通知された場合、FIFO118に保持されている復調データを、その通信方式を表す信号とともに取得して処理するようになされている。
図9は、図8のFIFO118の詳細な構成例を示すブロック図である。同図の例において、FIFO118は、アドレスカウント回路151、デュアルポートRAM152、および出力遅延回路153により構成されている。
アドレスカウント回路151は、各通信方式に対応するフレームヘッドの検出の結果として得られるフレームスタート信号(信号d120)が供給された後、1etu毎のイネーブルである信号d127をカウントするようになされている。アドレスカウント回路151によるカウント値は、デュアルポートRAM152のライトアドレスとして、デュアルポートRAM152のライトアドレス端子に供給される。
また、デュアルポートRAM152のデータ入力端子には、セレクタ117から出力された復調データである信号d126が、信号d127のイネーブルのタイミングで供給されるようになされている。また、信号d127は、デュアルポートRAM152のライトイネーブル端子にも供給されるようになされている。
すなわち、フレームヘッドが検出された通信方式におけるフレームスタート時点から、1etu毎に復調データが、デュアルポートRAM152のアドレス「0」、「1」、「2」・・・にそれぞれ記憶されていくのである。
また、アドレスカウント回路151は、フレームスタート時点からのカウント値が予め設定された最大etu数に達したタイミング、またはフレームエンド信号が供給されたタイミングで、フレームエンド検出信号を出力遅延回路153に出力させるようになされている。出力遅延回路153から出力されるフレームエンド検出信号が、データ処理部119に受信終了を通知する信号となる。
また、アドレスカウント回路151は、先に検出されたフレームヘッドに対応する通信方式とは異なる通信方式のフレームスタート信号が供給された場合、それまでのカウント値をクリアして、新たにアドレス「0」からカウントするようになされている。そして、アドレスカウント回路151による新たなカウント値がデュアルポートRAM152のライトアドレス端子に供給されていく。
すなわち、例えば、TypeAのフレームヘッドが検出された後、さらに、TypeBのフレームヘッドが検出された場合、それまでデュアルポートRAM152に蓄積されていた復調データが上書きされていくのである。つまり、TypeBのフレームヘッドが検出される以前にデュアルポートRAM152に蓄積されていた復調データは破棄されることになる。
出力遅延回路153は、アドレスカウント回路151から供給されたフレームエンド検出信号と、信号d119として供給された通信方式選択部115の判定結果を表す信号とを、デュアルポートRAM152へのデータの書き込みのタイミングと同期させるように遅延させて、データ処理部119に出力するようになされている。
図10は、TypeAのフレームヘッドが検出された後、さらに、TypeBのフレームヘッドが検出された場合のFIFO118の処理を説明するタイミングチャートである。同図における各信号の波形は、横軸を時間、縦軸を信号のレベルとして示されるものである。
図10Aには、TypeB復調部104のデータ復調部134から出力される復調データである信号d111により表わされるデータ値が示されている。この例では、「0」、「0」、「0」、・・・のデータ値が示されている。なお、図10Aの上に記された矢印により示される区間のデータ値により、TypeB方式における通信開始の情報(SOF)が表わされることになる。
また、図10Aにおいて点線の矩形で囲まれた部分がTypeB方式における1フレーム分のデータである2560etuに対応する。
図10Bには、TypeA復調部103のデータ復調部132から出力される復調データである信号d112により表わされるデータ値が示されている。この例では、「0」、「1」、「0」、・・・のデータ値が示されている。
この例では、図10Bの最初のデータ値「0」は系列Zのシンボルであり、これによりTypeA方式における通信開始の情報(SOC)が表わされることになる。
図10Cには、TypeA復調部103のデータ復調部132から出力されるイネーブルである信号d115の波形が示されている。
図10Dには、TypeB復調部104のデータ復調部134から出力されるイネーブルである信号d116の波形が示されている。
図10Eには、TypeA復調部103のヘッダ検出部131から出力される信号d103の波形が示されている。同図に示されるように、図10Bに示されるデータ値の中で、系列Zのシンボルに対応するデータ値「0」と同じタイミングで、信号d103のレベルが「H」となっている。
図10Fには、TypeB復調部104のヘッダ検出部133から出力される信号d104の波形が示されている。同図に示されるように、図10Aに示されるデータ値によりSOFが形成された時点に対応するデータ値「1」と同じタイミングで、信号d104のレベルが「H」となっている。
図10Gには、通信方式選択部115から出力されるフレームスタート信号である信号d120の波形が示されている。同図に示されるように、図10Eの信号d103のレベルが最初に「H」となったタイミングで、信号d120のレベルも「H」となっている。また、図10Fの信号d104のレベルが最初に「H」となったタイミングでも、やはり信号d120のレベルが「H」となっている。
ただし、図10Eの信号d103のレベルが2回目に「H」となったタイミングでは、信号d120のレベルは「H」となっていない。
図10Hには、FIFO118から出力されるフレームエンド検出信号の波形が示されている。同図に示されるように、図10Aに示されるデータ値が2560etuに達した時点のデータ値「0」から1/2etu遅延して、フレームエンド検出信号のレベルが「H」となっている。
図10Iには、信号d119により表わされる通信方式が示されている。同図に示されるように、図10Gのフレームスタート信号のレベルが最初に「H」となってから、2回目に「H」となるまでの間、信号d119により表わされる通信方式は、TypeAとされている。また、図10Gのフレームスタート信号のレベルが2回目に「H」となった後、信号d119により表わされる通信方式は、TypeBとされている。
図10Jには、デュアルポートRAM152のライトアドレスが示されている。同図に示されるように、図10Gのフレームスタート信号のレベルが「H」となった後、1etu毎にアドレスがカウントアップされている。なお、デュアルポートRAM152のライトアドレスの最小値はアドレス「0」であり、フレームスタート信号のレベルが「H」となった後、最初に供給される復調データは、デュアルポートRAM152のアドレス「0」に格納されるようになされている。
また、デュアルポートRAM152のライトアドレスは、図10Gのフレームスタート信号のレベルが2回目に「H」となった後、アドレス「0」に戻り、その後、再び1etu毎にアドレスがカウントアップされている。
図10Kには、デュアルポートRAM152に書き込まれる復調データが示されている。同図に示されるように、図10Gのフレームスタート信号のレベルが最初に「H」となった後、図10Bに示される復調データが1ビットずつ書き込まれている。しかし、図10Gのフレームスタート信号のレベルが2回目に「H」となった後、図10Aに示される復調データが1ビットずつ書き込まれている。
なお、デュアルポートRAM152に書き込まれる復調データは、図10Lに示されるライトイネーブルのタイミングで書き込まれる。
図10Mには、デュアルポートRAM152の読み出しアドレスが示されている。また、図10Nには、FIFO118からデータ処理部119に読み出されるデータが示されている。この例では、0乃至255のアドレスが1度に読み出しアドレスとして指定されている。また、指定されたアドレスに対応して256etu分のデータがFIFOから読み出されている。
このように、TypeAのフレームヘッドが検出された後、さらに、TypeBのフレームヘッドが検出された場合、FIFO118では、それまでデュアルポートRAM152に蓄積されていた復調データが上書きされていく。そして、データ処理部119は、フレームエンド検出信号が得られた後、本来の信方式に対応する復調データ(いまの場合、TypeB方式に対応する復調データ)をまとめてFIFOから読み出すのである。
このようにすることで、本発明を適用した復調部100は、データ処理を適切に行うことができる。例えば、フレームヘッドの検出などの際、ノイズなどの影響により、本来の通信方式と異なる通信方式と誤判定された場合であっても、その後のデータ処理は正しく行うことができる。
図10を参照して上述したように、本発明によれば、TypeAのフレームヘッドが検出された後、さらに、TypeBのフレームヘッドが検出された場合、FIFO118では、それまでデュアルポートRAM152に蓄積されていた復調データが上書きされていく。しかし、TypeBのフレームヘッドが検出された後、再びTypeAのフレームヘッドが検出された場合、FIFO118では、それまでデュアルポートRAM152に蓄積されていた復調データが上書きされることはない。すなわち、12etu分のデータ値により形成されるTypeB方式におけるSOFが検出された後は、1etu分のデータ値により形成されるTypeA方式におけるSOCが検出されたとしても無視されるのである。
TypeBのフレームヘッドが検出された後、再びTypeAのフレームヘッドが検出された場合、上述のようにFIFO118にデータが書き込まれるためには、通信方式選択部115が出力する信号d119により、セレクタ117を適切に制御する必要がある。上述したように、通信方式選択部115は、優先度基準決定部116から供給される信号d122乃至信号d125に基づいて、いずれの通信方式を優先して選択すべきかを判定する。
次に、優先度基準決定部116から供給される信号d122乃至信号d125について説明する。
図11は、信号d119により表わされる通信方式と、信号d122乃至信号d125との関係を説明する図である。
同図には、信号d119により表わされる通信方式がそれぞれTypeA方式、TypeB方式、ビットレート424kbpsのFeliCa方式、ビットレート212kbpsのFeliCa方式の場合のそれぞれに対応する信号d122乃至信号d125により表わされる値が示されている。また、同図に示される初期値は、通信方式選択部115により未だいずれの通信方式も選択されていないときの信号d119の出力値とされる。
同図には、信号d122乃至信号d125により表わされる値として、0乃至4の数値が記載されている。これらの数値は優先度を表すものであり、数値が大きいほど優先度が高いことを表しいている。また、優先度が0である場合、その通信方式は、通信方式選択部115により選択され得ないことを表している。
信号d119が初期値である場合、信号d122乃至信号d125により表わされる値は、それぞれ「4,3,2,1」とされている。
すなわち、通信方式選択部115により未だいずれの通信方式も選択されていない状態で、上述の4つの通信方式のいずれかに対応するフレームヘッドが検出された場合、通信方式選択部115は、各優先度に応じて通信方式を選択する。
例えば、通信方式選択部115により未だいずれの通信方式も選択されていない状態で、TypeA方式に対応するフレームヘッドが検出された場合、通信方式選択部115は、TypeA方式を選択する。ただし、TypeA方式に対応するフレームヘッドと同時に、TypeB方式に対応するフレームヘッドが検出された場合、通信方式選択部115は、TypeB方式を選択する。TypeB方式の優先度である信号d123により表わされる値は2であり、TypeA方式の優先度である信号d122により表わされる値1より大きいからである。
このように、信号d119が初期値である場合、異なる通信方式のフレームヘッドが同時に検出された場合、優先度が高い通信方式が選択されるようになされている。
信号d119により表わされる通信方式がTypeA方式である場合、信号d122乃至信号d125により表わされる値は、それぞれ「4,3,2,1」とされている。
例えば、通信方式選択部115によりTypeA方式が選択されている状態で、TypeB方式に対応するフレームヘッドが検出された場合、通信方式選択部115は、TypeB方式を選択する。TypeB方式の優先度である信号d123により表わされる値は2であり、TypeA方式の優先度である信号d122により表わされる値1より大きいからである。
ただし、TypeB方式に対応するフレームヘッドと同時に、ビットレート424kbpsのFeliCa方式に対応するフレームヘッドが検出された場合、通信方式選択部115は、ビットレート424kbpsのFeliCa方式を選択する。ビットレート424kbpsのFeliCa方式の優先度である信号d124により表わされる値は3であり、TypeB方式の優先度である信号d123により表わされる値2より大きいからである。
このように、信号d119により表わされる通信方式がTypeA方式である場合、異なる通信方式のフレームヘッドが同時に検出された場合、優先度が高い通信方式が選択されるようになされている。
信号d119により表わされる通信方式がTypeB方式である場合、信号d122乃至信号d125により表わされる値は、それぞれ「3,2,1,0」とされている。
例えば、通信方式選択部115によりTypeB方式が選択されている状態で、ビットレート424kbpsのFeliCa方式に対応するフレームヘッドが検出された場合、通信方式選択部115は、ビットレート424kbpsのFeliCa方式を選択する。ビットレート424kbpsのFeliCa方式の優先度である信号d124により表わされる値は2であり、TypeB方式の優先度である信号d123により表わされる値1より大きいからである。
ただし、ビットレート424kbpsのFeliCa方式に対応するフレームヘッドと同時に、ビットレート212kbpsのFeliCa方式に対応するフレームヘッドが検出された場合、通信方式選択部115は、ビットレート212kbpsのFeliCa方式を選択する。ビットレート212kbpsのFeliCa方式の優先度である信号d125により表わされる値は3であり、ビットレート424kbpsのFeliCa方式の優先度である信号d124により表わされる値2より大きいからである。
また、例えば、通信方式選択部115によりTypeB方式が選択されている状態で、TypeA方式に対応するフレームヘッドが検出された場合、通信方式選択部115は、TypeA方式を選択しない。すなわち、いまの場合、信号d119により表わされる通信方式は、TypeB方式のまま変更されないことになる。TypeA方式の優先度である信号d122により表わされる値が0だからである。
このように、信号d119により表わされる通信方式がTypeB方式である場合、TypeA方式以外の異なる通信方式のフレームヘッドが同時に検出された場合、優先度が高い通信方式が選択されるようになされている。
信号d119により表わされる通信方式がビットレート424kbpsのFeliCa方式である場合、信号d122乃至信号d125により表わされる値は、それぞれ「2,1,0,0」とされている。
例えば、通信方式選択部115によりビットレート424kbpsのFeliCa方式が選択されている状態で、ビットレート212kbpsのFeliCa方式に対応するフレームヘッドが検出された場合、通信方式選択部115は、ビットレート212kbpsのFeliCa方式を選択する。ビットレート212kbpsのFeliCa方式の優先度である信号d125により表わされる値は2であり、ビットレート424kbpsのFeliCa方式の優先度である信号d124により表わされる値1より大きいからである。
また、例えば、通信方式選択部115によりビットレート424kbpsのFeliCa方式が選択されている状態で、TypeA方式またはTypeBに対応するフレームヘッドが検出された場合、通信方式選択部115は、TypeA方式またはTypeB方式を選択しない。すなわち、いまの場合、信号d119により表わされる通信方式は、ビットレート424kbpsのFeliCa方式のまま変更されないことになる。TypeA方式、TypeB方式の優先度である信号d122、信号d123により表わされる値がそれぞれ0だからである。
このように、信号d119により表わされる通信方式がビットレート424kbpsのFeliCa方式である場合、ビットレート212kbpsのFeliCa方式のフレームヘッドが検出された場合、通信方式が選択されるようになされている。
信号d119により表わされる通信方式がビットレート212kbpsのFeliCa方式である場合、信号d122乃至信号d125により表わされる値は、それぞれ「1,0,0,0」とされている。
例えば、通信方式選択部115によりビットレート212kbpsのFeliCa方式が選択されている状態で、他の通信方式に対応するフレームヘッドが検出された場合、通信方式選択部115は、他の通信方式を選択しない。すなわち、いまの場合、信号d119により表わされる通信方式は、ビットレート212kbpsのFeliCa方式のまま変更されないことになる。TypeA方式、TypeB方式、ビットレート424kbpsのFeliCa方式の優先度である信号d122、信号d123、信号d124により表わされる値がそれぞれ0だからである。
なお、4つの通信方式のいずれかが選択されている状態で、その選択された通信方式と同じ通信方式に対応するフレームヘッドが検出された場合、あらためて同じ通信方式が選択されるようにしてもよいし、単に無視されるようにしてもよい。この場合、各通信方式の優先度が1とされているからである。
図11に示されるような情報が、優先度基準テーブルとして図8の優先度基準決定部116に予め記憶されているものとする。そして、優先度基準決定部116は、信号d119の値を入力値とし、入力値に対応する信号d122乃至信号d125を通信方式選択部115に出力するのである。
すなわち、一度選択された第1の通信方式とは異なる第2の通信方式が、あらためて選択された場合、その第2の通信方式に基づいて(第2の通信方式に対応して)、複数(いまの場合4つ)の通信方式の優先度がそれぞれ変更されるのである。
図12は、図11に示されるように、信号d122乃至信号d125が出力される場合において、上述の4つの通信方式に対応するフレームヘッドの検出に対応する通信方式の選択を説明する図である。なお、同図においては、ビットレート212kbpsのFeliCa方式がF212と記載されており、ビットレート424kbpsのFeliCa方式がF424と記載されている。また、同図においてTypeA方式とTypeB方式は、それぞれAとBと記載されている。
なお、同図における斜線部は、信号d122乃至信号d125の出力前後、信号d119が更新されなかった事を表す。例えば、更新前の信号d119により表わされる通信方式がビットレート212kbpsのFeliCa方式(F212)の場合、信号d105のレベルが「L」、信号d106のレベルが「H」とされたとき、信号d119により表わされる通信方式はF424に変更される事なくF212のままとなる。
同図に示されるように、ビットレート212kbpsのFeliCa方式に対応するフレームヘッドの検出信号である信号d105のレベルが「H」となった場合、信号d119により表わされる通信方式がいずれであっても、ビットレート212kbpsのFeliCa方式が選択される。
また、信号d105のレベルが「L」の状態で、ビットレート424kbpsのFeliCa方式に対応するフレームヘッドの検出信号である信号d106のレベルが「H」となった場合、信号d119により表わされる通信方式がF212でなければ、ビットレート424kbpsのFeliCa方式(F424)が選択される。なお、更新前の信号d119により表わされる通信方式がF212の場合、図11でF424(信号d106)に割り当てられる優先度(信号d124)の値が0となり、現在選択中の通信方式(F212)のもつ優先度より下回る。そのため、信号d119は更新されずF212のままとなる。
さらに、信号d105と信号d106のレベルが「L」の状態で、TypeB方式に対応するフレームヘッドの検出信号である信号d104のレベルが「H」となった場合、信号d119により表わされる通信方式がF212またはF424でなければ、TypeB方式が選択される。なお、更新前の信号d119により表わされる通信方式がF212またはF424の場合、図11でTypeB(信号d104)に割り当てられる優先度(信号d123)の値が0となり、現在選択中の通信方式(F212またはF424)のもつ優先度より下回る。そのため、信号d119は更新されず、F212またはF424のままとなる。
また、信号d105、信号d106、および信号d104のレベルが「L」の状態で、TypeA方式に対応するフレームヘッドの検出信号である信号d103のレベルが「H」となった場合、信号d119により表わされる通信方式がTypeAまたは初期値ならば、TypeA方式が選択される。なお、更新前の信号d119により表わされる通信方式がF212、F424、またはBの場合、図11でTypeA(信号d103)に割り当てられた優先度(信号d122)の値が0となり、現在選択中の通信方式(F212、F424、またはB)のもつ優先度より下回る。そのため、信号d119は更新されず、F212、F424、またはBのままとなる。
このように、通信方式選択部115は、優先度基準決定部116から供給される信号d122乃至信号d125に基づいて、いずれの通信方式を優先して選択すべきかを判定する。そして、選択された通信方式を表す信号d119がセレクタ117およびFIFO118に供給されるのである。
図11と図12を参照して上述した例においては、ビットレート212kbpsのFeliCa方式の優先度が最も高く設定され、次にビットレート424kbpsのFeliCa方式、TypeB方式、TypeA方式とされている。つまり、各通信方式の優先度の値を比較すると、ビットレート212kbpsのFeliCa方式>ビットレート424kbpsのFeliCa方式>TypeB方式>TypeA方式のように表現できる。
すなわち、図2を参照して上述したように、FeliCa方式のフレームヘッドは、TypeB方式、TypeA方式と比較してビット長が長い。また、TypeB方式のフレームヘッドは、TypeA方式と比較してビット長が長い。よりビット長の長い通信方式に対応するフレームヘッドが検出された場合、その検出結果は、信頼性が高いと考えられるので、優先度が高く設定されているのである。
また、ビットレート212kbpsのFeliCa方式は、ビットレート424kbpsのFeliCa方式と比較してフレームヘッドの検出に要する時間が長くなる。また、ビットレート212kbpsのFeliCa方式の信号は、ビットレート424kbpsのFeliCa方式の信号と比較してより多くのサンプリング点においてサンプリングすることができる。よって、1/4etu毎に2値化した場合の2値化信号系列は、ビットレート212kbpsのFeliCa方式の方が信頼性の高いものとなる。このような信頼性が高さを考慮して、ビットレート212kbpsのFeliCa方式の優先度が高く設定されているのである。
図13は、図8の復調部100が、リーダ/ライタからTypeB方式の信号を受信した場合の動作を説明するタイミングチャートである。同図の例は、図7を参照して上述した場合と同様に、受信信号の波形にノイズが含まれるものである。
図13Aは、信号d102の波形を表しており、信号d102をTypeB方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列が図13Bに示されている。図中点線の楕円で囲まれた部分において、信号d102の波形がノイズの影響で歪んでいる。
図13Cには、信号d112の波形により表わされるデータ値が示されている。この例では、「0」、「0」、・・・「1」、「1」、「0」、「1」のデータ値が示されている。
図13Dには、信号d116として出力されるイネーブルの波形が示されている。この例では、図13Cの信号d112の波形により表わされるデータ値によりSOFが形成された後、イネーブルのパルスが出力されている。
図13Eには、信号d104の波形が示されている。この例では、信号d104のレベルが「H」となったことにより、TypeB方式のフレームヘッドが検出されたことが示されている。すなわち、TypeB方式のフレームヘッドとしてSOFが検出されたタイミングで、信号d104のレベルが「H」とされたのである。
図13Fには、信号d102をTypeA方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列が示されている。信号d102は、TypeB方式の信号を受信して得られた検波信号なので、本来、信号d102をTypeA方式の閾値を用いて1/4etu毎に2値化して得られた2値化信号系列から、図1を参照して上述したようなTypeA方式のシンボルを得ることはできない。
しかしながら、いまの場合、ノイズの影響により信号d102の波形が歪み、その結果、系列Zのシンボルが検出されてしまう。これにより、TypeA方式のフレームヘッドが検出されたものとして、ヘッダ検出部131から所定の信号が出力されることになる。
図13Gには、信号d111の波形により表わされるデータ値が示されている。いまの場合、上述したようにTypeA方式の信号と誤判定されて、「0」、「1」、・・・「0」、「1」、「0」というデータ値が出力されている。
図13Hには、信号d115として出力されるイネーブルの波形が示されている。この例では、図13Gの信号d111の波形により表わされるデータ値によりSOC(系列Z)が形成された後、イネーブルのパルスが出力されている。
図13Iには、信号d103の波形が示されている。この例では、信号d103のレベルが「H」となったことにより、TypeA方式のフレームヘッドが検出されたことが示されている。すなわち、TypeA方式のフレームヘッドとして系列Zが検出されたタイミングで、信号d103のレベルが「H」とされたのである。また、この例では、系列Zが2回検出されることになるので、信号d103のレベルは1度「H」とされた後、「L」に戻り、再び「H」とされている。
図13Jには、TypeA方式の優先度を表す信号である信号d122により表わされる値が示されている。同図に示されるように、図13Iの信号d103のレベルが「H」とされた後、次のetuから値が「1」とされている。また、図13Eの信号d104のレベルが「H」とされた後、次のetuから値が「0」とされている。
図13Kには、TypeB方式の優先度を表す信号である信号d123により表わされる値が示されている。同図に示されるように、図13Iの信号d103のレベルが最初に「H」となった後、次のetuから値が「2」とされている。また、図13Eの信号d104のレベルが「H」とされた後、次のetuから値が「1」とされている。
図13Lには、信号d119として出力された信号により表わされる通信方式選択部115により選択された通信方式が示されている。同図に示されるように、当初は初期値(INIT)が出力された後、図13Iの信号d103のレベルが最初に「H」となった後、次のetuからTypeA方式とされている。また、図13Eの信号d104のレベルが「H」とされた後、次のetuからTypeB方式とされている。
なお、信号d119として出力された信号により表わされる通信方式は、図13Iの信号d103のレベルが2回目に「H」となった後、次のetuからTypeA方式とされることはない。図11と図12を参照して説明したように、信号d122と信号d123により選択すべき通信方式が判定されるからである。
図13Mには、セレクタ117から出力される信号d126に対応するデータ値が示されている。同図に示されるように、信号d119として出力された信号により表わされる通信方式がTypeAを表している期間は、図13Gの信号d111に対応するデータ値が出力される。また、信号d119として出力された信号により表わされる通信方式がTypeBを表している期間は、図13Cの信号d112に対応するデータ値が出力される。
図13Nには、セレクタ117から出力される信号d127に対応するイネーブルの波形が示されている。同図に示されるように、信号d119として出力された信号により表わされる通信方式がTypeAを表している期間は、図13Hの信号d115のイネーブルが出力される。また、信号d119として出力された信号により表わされる通信方式がTypeBを表している期間は、図13Dの信号d116のイネーブルが出力される。
このように、本発明によれば、フレームヘッドの検出などの際、ノイズなどの影響により、本来の通信方式と異なる通信方式と誤判定された場合であっても、その後のデータ処理は正しく行うことができるようにする。
また、本発明では、互いに異なる複数の通信方式に対応する処理を並行して行い、受信中に2つ以上のフレームヘッド検出結果を得た場合でも、より信頼性の高い検出結果に基づいて通信方式を選択するようにした。従って、接続が確立されて実際に情報のやり取りが可能となるまでの時間短縮を図ることができる。
また、本発明では、通信方式を選択する際に、各通信方式に対応するフレームヘッドのビット長、およびフレームヘッドの検出に要する時間に基づいて優先度が設定されるようにしたので、より信頼性の高いデータ処理を行うことが可能となる。
なお、図11と図12を参照して上述した例では、各通信方式の優先度がビットレート212kbpsのFeliCa方式>ビットレート424kbpsのFeliCa方式>TypeB方式>TypeA方式のように設定されていたが、異なる基準で優先度が設定されるようにしてもよい。
例えば、図1を参照して上述したように、各通信方式において採用される変調度を比較した場合、TypeAにおいて採用される変調度が最も大きい。すなわち、TypeA方式の系列Zが検出された場合、受信波形において十分大きい振幅差が検出されたことを意味する。例えば、受信環境が良好であることが予め分かっている場合、このような十分に大きい振幅差がノイズなどの影響により発生したとは考え難い。
そこで、例えば、受信環境が良好であることが予め分かっている場合、各通信方式の優先度がTypeA方式>ビットレート212kbpsのFeliCa方式>ビットレート424kbpsのFeliCa方式>TypeB方式のように設定されるようにしてもよい。
図14と図15は、各通信方式の優先度がTypeA方式>ビットレート212kbpsのFeliCa方式>ビットレート424kbpsのFeliCa方式>TypeB方式のように設定される場合について説明する図である。
図14は、信号d119により表わされる通信方式と、信号d122乃至信号d125との関係を説明する図である。同図は図11に対応する図であり、図中の各値の意味するところは、図11の場合と同様である。ここでは、詳細な説明は省略するが、図14の例では、TypeA方式の優先度が最も高く設定されている。
図15は、図14に示されるように、信号d122乃至信号d125が出力される場合において、上述の4つの通信方式に対応するフレームヘッドの検出に対応する通信方式の選択を説明する図である。同図は図12に対応する図であり、図中の各記号の意味するところは、図12の場合と同様である。ここでは、詳細な説明は省略するが、図15の例では、TypeA方式の優先度が最も高く設定されている。
このように、優先度の設定は、例えば、各通信方式において伝送される信号の変調度に基づいて設定されるようにしてもよい。
さらに、図11と図12、図14と図15に示される方式とは異なる方式で優先度が設定されるようにしても構わない。
次に、図16のフローチャートを参照して、図8の復調部100による復調処理の例について説明する。
ステップS21において、TypeA復調部103、TypeB復調部104、FeliCa424kbps復調部106、FeliCa212kbps復調部105のそれぞれは、例えば、検波信号(信号d102)を1/4etuを基準とする単位区間毎に2値化する。
ステップS22において、通信方式選択部115は、TypeA方式、TypeB方式、ビットレート424kbpsのFeliCa方式、ビットレート212kbpsのFeliCa方式のいずれかに対応するフレームヘッドが検出されたか否かを判定する。このとき、信号d103乃至信号d106に基づいて判定が行われることになる。
ステップS22において、いずれかの通信方式に対応するフレームヘッドが検出されたと判定された場合、処理は、ステップS23に進む。一方、ステップS22において、フレームヘッドが検出されなかったと判定された場合、処理は、ステップS21に戻る。
ステップS23において、通信方式選択部115は、優先度に基づいて通信方式を選択する。このとき、例えば、図12を参照して上述したように、優先度に基づく通信方式の選択が行われる。また、選択された通信方式を表す信号d119が出力される。
ステップS24において、優先度基準決定部116は、ステップS23の処理における選択結果に基づいて各通信方式の優先度を更新(変更)する。このとき、例えば、図11を参照して上述したように、各通信方式の優先度が変更される。また、各通信方式の優先度を表す信号d122乃至信号d125の出力値も変更される。
ステップS25において、セレクタ117は、ステップS23の処理により選択された通信方式に対応するデータ値(信号d126)とイネーブル(信号d127)をFIFO118に出力する。
ステップS26において、通信方式選択部115は、TypeA方式、TypeB方式、ビットレート424kbpsのFeliCa方式、ビットレート212kbpsのFeliCa方式のいずれかに対応するフレームヘッドが検出されたか否かを判定する。このとき、信号d103乃至信号d106に基づいて判定が行われることになる。
ステップS26において、いずれかの通信方式に対応するフレームヘッドが検出されたと判定された場合、処理は、ステップS27に進む。
ステップS27において、通信方式選択部115は、通信方式の選択の変更が必要か否かを判定する。ステップS27において、通信方式の選択の変更が必要と判定された場合、処理は、ステップS23に戻り、通信方式の選択の変更が不要と判定された場合、処理は、ステップS28に進むことになる。すなわち、信号d119により表わされる通信方式を変更する必要があるか否かを判定して、図12を参照して上述したように、必要に応じて通信方式の選択が行われるのである。
一方、ステップS26において、フレームヘッドが検出されなかったと判定された場合、ステップS27の処理は、スキップされる。
ステップS28において、データ処理部119は、FIFO118に最大etu数分のデータが蓄積されたか否かを判定する。まだ、最大etu数分のデータが蓄積されていないと判定された場合、処理は、ステップS25に戻る。
一方、ステップS28において、最大etu数分のデータが蓄積されたと判定された場合、処理は、ステップS29に進む。
ステップS29において、データ処理部119は、蓄積されたデータをFIFO118から読み出して処理する。
このようにして復調処理が行われる。
図17は、本発明の一実施の形態に係る復調部の別の構成例を示すブロック図である。図17におけるアナログ検波部402乃至データ処理部419は、それぞれ図8のアナログ検波部102乃至データ処理部119と同様の機能ブロックとされる。また、各部から出力される信号d402乃至信号d427も、図8の信号d102乃至信号d127と同様であるから、これらの詳細な説明は省略する。
図17の復調部400は、図8の復調部100の場合と異なり、連続回数カウンタ420が設けられている。
連続回数カウンタ420は、通信方式選択部415が選択した通信方式を信号d419に基づいて特定する。そして、連続回数カウンタ420は、同一の通信方式が選択されている状態で、クロック数をカウントするようになされている。
例えば、信号d419により表わされる通信方式がTypeAである場合、信号d419により表わされる通信方式が他の通信方式に変更されるまでの間、連続回数カウンタ420は、復調部400の内部の動作クロックをカウントアップしていく。
なお、連続回数カウンタ420は、例えば、復調結果のデータとともに出力されるイネーブルをカウントアップするようにしてもよい。
そして、例えば、カウントアップされたクロックの数が予め設定された閾値を超えた場合、連続回数カウンタ420は、優先度基準決定部416の内部の優先度基準テーブルを変更するための信号d428を出力する。
例えば、信号d419により表わされる通信方式がTypeBであったものとし、連続回数カウンタ420によりカウントアップされたクロック数が予め設定された閾値を超えた場合を考える。また、優先度基準決定部416には、図11を参照して上述したものと同様の優先順位に対応する優先度基準テーブルが記憶されていたものとする。
いまの場合、優先度基準決定部416に記憶されていた優先度基準テーブルは、図18に示されるように変更される。
図18は、信号d419により表わされる通信方式と、信号d422乃至信号d425との関係を説明する図である。同図は図11に対応する図であり、図中の各値の意味するところは、図11の場合と同様である。また、図18の例では、「d419の値」が「TypeB」とされている行において、信号d428に基づいて優先度が変更されたことが示されている。すなわち、図中の矢印の左側に記載された数値が、矢印の右側に記載された数値に変更されたのである。
この例では、通信方式選択部415により選択された通信方式がTypeB方式の場合、信号d422乃至信号d425により表わされる値が、それぞれ「0,0,1,0」に変更されている。つまり、通信方式選択部415により選択された通信方式がTypeB方式の場合、この後、他の通信方式に対応するフレームヘッドが検出されても、通信方式の選択の変更はなされないことになる。
通信方式選択部415によりTypeB方式が選択された状態で、十分に長い時間が経過した後、他の通信方式のフレームヘッドが検出されたとしても、ノイズの影響などによる誤判定である可能性が高いといえる。このため、図18に示されるように、優先度基準テーブルが変更されたのである。
このように、1つの通信方式が十分に長い時間選択されている場合、その後に他の通信方式のフレームヘッドが検出されたとしても、あらためて通信方式の選択が行われないようにしてもよい。
なお、図18は優先度基準テーブルの変更の一例であり、変更後の優先度の設定は、経験や用途などにより別途定められるようにしてもよい。
また、図18の例では、優先度基準テーブルが自動的に変更されることを前提として説明したが、例えば、ユーザが変更後の設定値を入力するなどして、優先度基準テーブルが変更されるようにしてもよい。
なお、図8の復調部100、図17の復調部400には、内部にそれぞれTypeA方式、TypeB方式、ビットレート424kbpsのFeliCa方式、ビットレート212kbpsのFeliCa方式に対応する復調部が設けられるものとした。しかし、非接触ICカードとリーダライタ間の通信方式は、今後新たに追加/削除されることも予想される。そのような場合、図8の復調部100、図17の復調部400には、内部にそれぞれ必要な通信方式に対応する復調部が設けられるようにすればよい。
なお、本明細書において上述した一連の処理は、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。