(57)【要約】【課題】ノイズ等の外乱要因に対して、ＩＣカードから送られる信号を正確に受信するとともに、受信バッファのオーバーフローを防止し、ＣＰＵが受信データを読み出す時間的制約を大幅に緩和する。【解決手段】パリティ検査やフレーム検査の結果を受信データと一対にして受信バッファに格納するとともに、パリティ検査やフレーム検査の結果にもとづいて受信バッファの書き込み制御を行うことによって、正確にデータを受信することができるＩＣカード接続装置を提供する。【選択図】  図１
2004326685.tif 000002
【特許請求の範囲】
【請求項１】
外部端子付きＩＣカード（以下、「ＩＣカード」という。）に対する送信・受信を切り替える送受信切替部と、シリアルで入力されるデータを１バイトのパラレルデータに変換して出力するパラレル／シリアル変換部と、入力データを元に算出されるパリティと受信したパリティとを比較するパリティ検査部と、パリティエラーの場合にＩＣカードに対して再送信を要求する再送信要求信号生成部と、受信データおよびパリティ検査の結果を格納する受信バッファと、ＣＰＵから入力される送信データを格納する送信バッファと、送信データを下にパリティを算出するパリティ生成部と、パラレルで入力されるデータをシリアルデータに変換して出力するシリアル／パラレル変換器とを備える、ＩＣカード接続装置。
【請求項２】
ＩＣカードから送られるデータおよびその受信データのパリティ検査の結果を一対として格納する受信バッファを複数有することを特徴とする、請求項１に記載のＩＣカード接続装置。
【請求項３】
複数の受信バッファがＦＩＦＯメモリで構成されることを特徴とする請求項１に記載のＩＣカード接続装置。
【請求項４】
パリティ検査の結果を参照して受信バッファに書き込むアドレス（以下、「ライトポインタ」という。）を制御する書き込み制御部をさらに有し、パリティエラーの場合にはライトポインタを進めないことを特徴とする請求項１に記載のＩＣカード接続装置。
【請求項５】
ＣＰＵが指定した同一データに対する再送信要求回数の上限を保持するリトライ回数上限レジスタと、同一データに対するパリティエラーを検出した回数をカウントするエラー検出カウンタと、前記リトライ回数上限と前記パリティエラーを検出した回数を比較する比較部と、ライトポインタを制御する書き込み制御部をさらに有し、同一データに対するパリティエラーが規定した回数に達しない場合は再送信を要求し、ライトポインタを進めない、一方、規定回数を超えた場合は再送信を要求せず、ライトポインタを進めることを特徴とする請求項１に記載のＩＣカード接続装置。
【請求項６】
ＩＣカードに対する送信・受信を切り替える送受信切替部と、シリアルで入力されるデータを１バイトのパラレルデータに変換して出力するパラレル／シリアル変換部と、キャラクタ保護期間に入力信号レベルを検査するフレーム検査部と、キャラクタ保護期間に入力信号がＬｏｗレベルとなるエラー（以下、「フレームエラー」という。）の場合にＩＣカードに対して再送信を要求する再送信要求信号生成部と、受信データおよびフレーム検査の結果を格納する受信バッファと、ＣＰＵから入力される送信データを格納する送信バッファと、送信データを下にパリティを算出するパリティ生成部と、パラレルで入力されるデータをシリアルデータに変換して出力するシリアル／パラレル変換器とを備える、ＩＣカード接続装置。
【請求項７】
ＩＣカードから送られるデータおよびその受信データのフレーム検査の結果を一対として格納する受信バッファを複数有することを特徴とする、請求項６に記載のＩＣカード接続装置。
【請求項８】
複数の受信バッファがＦＩＦＯメモリで構成されることを特徴とする請求項６に記載のＩＣカード接続装置。
【請求項９】
フレーム検査の結果を参照して受信バッファのライトポインタを制御する書き込み制御部をさらに有し、フレームエラーの場合にはライトポインタを進めないことを特徴とする請求項６に記載のＩＣカード接続装置。
【請求項１０】
ＣＰＵが指定した同一データに対する再送信要求回数の上限を保持するリトライ回数上限レジスタと、同一データに対するフレームエラーを検出した回数をカウントするエラー検出カウンタと、前記リトライ回数上限と前記フレームエラーを検出した回数を比較する比較部と、ライトポインタを制御する書き込み制御部をさらに有し、同一データに対するフレームエラーが規定した回数に達しない場合は再送信を要求し、ライトポインタを進めない、一方、規定回数を超えた場合は再送信を要求せず、ライトポインタを進めることを特徴とする請求項６記載のＩＣカード接続装置。
【請求項１１】
ＩＣカードに対する送信・受信を切り替える送受信切替部と、シリアルで入力されるデータを１バイトのパラレルデータに変換して出力するパラレル／シリアル変換部と、入力データを元に算出されるパリティと受信したパリティとを比較し、またキャラクタ保護期間に入力信号レベルを検査するパリティ／フレーム検査部と、パリティエラーまたはフレームエラーの場合にＩＣカードに対して再送信を要求する再送信要求信号生成部と、受信データおよびパリティ検査の結果およびフレーム検査の結果を格納する受信バッファと、ＣＰＵから入力される送信データを格納する送信バッファと、送信データを下にパリティを算出するパリティ生成部と、パラレルで入力されるデータをシリアルデータに変換して出力するシリアル／パラレル変換器とを備える、ＩＣカード接続装置。
【請求項１２】
ＩＣカードから送られるデータおよびその受信データのパリティ検査の結果およびその受信データのフレーム検査の結果を一対として格納する受信バッファを複数有することを特徴とする、請求項１１に記載のＩＣカード接続装置。
【請求項１３】
複数の受信バッファがＦＩＦＯメモリで構成されることを特徴とする請求項１１に記載のＩＣカード接続装置。
【請求項１４】
パリティ検査の結果およびフレーム検査の結果を参照して受信バッファのライトポインタを制御する書き込み制御部をさらに有し、パリティエラーまたはフレームエラーの場合にはライトポインタを進めないことを特徴とする請求項１１に記載のＩＣカード接続装置。
【請求項１５】
ＣＰＵが指定した同一データに対する再送信要求回数の上限を保持するリトライ回数上限レジスタと、同一データに対するパリティエラーまはたフレームエラーを検出した回数をカウントするエラー検出カウンタと、前記リトライ回数上限と前記エラーを検出した回数を比較する比較部と、ライトポインタを制御する書き込み制御部をさらに有し、同一データに対するパリティエラーまはたフレームエラーが規定した回数に達しない場合は再送信を要求し、ライトポインタを進めない、一方、規定回数を超えた場合は再送信を要求せず、ライトポインタを進めることを特徴とする請求項１１記載のＩＣカード接続装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
ＩＣカードから送られてくるデータを受信するＩＣカード接続装置に関する。
【０００２】
【従来の技術】
ＩＣカード接続装置（リーダ・ライタ）の従来の一般的な構成を図１３に示す。ＩＣカードに関する規格には、ＩＥＣ／ＩＳＯ７８１６がある。図１３において、１００はＣＰＵである。２０１は送信バッファであり、ＣＰＵから送られてくる送信データを一時的に格納する。２０２はパリティ生成部であり、送信データのパリティを算出し付加する。２０３はパラレル／シリアル変換部であり、スタートビット、送信データおよびパリティビットをシリアル送出する。２０４は再送信要求信号生成部であり、受信データにパリティエラーがある場合に再送信要求信号を生成し、ＩＣカードに送出する。２１１は送受信切替部であり、ＩＣカードとの通信において送信と受信を切り替える。２１２はシリアル／パラレル変換部であり、ＩＣカードからシリアルに送られてくるスタートビット、データ、パリティビットを受信する。２１３はパリティ検査部であり、受信したデータのパリティを検査し、パリティエラーがある場合には再送信要求信号生成部２０４に通知する。４０１は受信バッファであり、受信したデータがＣＰＵに読み込まれるまで一時的に格納する。このように構成された従来のＩＣカード接続装置のデータ受信について説明する。
【０００３】
ＩＣカードから送られてくるデータのフォーマットを図１４に示す。ＩＣカードのデータ端子は未通信時ハイインピーダンス状態を保持し、プルアップ抵抗により信号レベルＨｉｇｈに固定されている。ＩＣカードのデータ伝送は信号レベルＬｏｗのスタートビットから始まり、続いてデータ８ビット（Ｄａ、Ｄｂ、Ｄｃ、Ｄｄ、Ｄｅ、Ｄｆ、Ｄｇ、Ｄｈ）、パリティビットから構成される。パリティビットは、データ８ビットの信号レベルＨｉｇｈの個数を数え、その個数が偶数ならば信号レベルＬｏｗを、奇数ならば信号レベルＨｉｇｈとなるように設定されている。尚、このように付与されるパリティを偶パリティと呼ぶ。ＩＣカードはパリティビット送出後、データ端子をハイインピーダンス状態に戻す。データ端子はプルアップ抵抗によって信号レベルＨｉｇｈに固定される。これに対して受信側のＩＣカード接続装置は、受信したデータ８ビットから算出されるパリティビットの値と受信したパリティビットの値を比較する。パリティビットが正しい場合、受信側は次のデータの受信に備える。パリティビットが正しくない場合、パリティエラーが発生したと判断し、スタートビットの先端から（１０．５±０．２）ｅｔｕから最小１ｅｔｕ、最大２ｅｔｕの間、誤り信号としてデータ端子を信号レベルＬｏｗにする。送信側はスタートビットから（１１±０．２）ｅｔｕ後にデータ端子を検査し、次の動作を行う。
【０００４】
・データ端子が信号レベルＨｉｇｈの場合、正常に受信されたと判断する
・データ端子が信号レベルＬｏｗの場合、つまり誤り信号を受信した場合、伝送が正しく行われなかったと判断し、データの再送を行う。
【０００５】
ＩＣカードはユーザが携帯して使用することが考えられるが、端子が露出しているため摩耗や腐食などによって端子が劣化しやすく、汚れ、水、静電気などの影響を受けやすい。したがって、ＩＣカード接続装置にはこのような外乱要因に対してＩＣカードとのデータの送受信を正しく確実に行うことが求められている。また、広くＩＣカードが普及するためには、上記の機能を安価に実現するとともに、ＩＣカード接続装置の制御を行うＣＰＵの処理負荷を軽減する必要がある。
【０００６】
従来のＩＣカード接続装置では、受信バッファにデータを格納した後、次のデータの受信を完了するまでに受信バッファのデータをＣＰＵが読み出さなければ、受信バッファのデータが次のデータで上書きされて正しく読み出すことができない。このように、一定の時間内にＣＰＵが受信データの読み出しを行うことを保証する必要がある。なお、この場合にＣＰＵが受信データを読み出す必要がある時間間隔は、受信データのボーレートに依存する。
【０００７】
また、図１６は、送信側の伝送レートに対して受信タイミングがずれた場合に正しくデータを受信できない例を示している。送信側はスタートビットＳの「０」の後、ビット列「００００１０１０」およびパリティビットＰの「１」を送信している。これに対して、受信側は図示したサンプリングタイミングでビット列「０００００１０１」を受信する。この図の場合、パリティビットが一致するため、パリティエラーは発生しない。従来はこのような伝送誤りを検出する機能はなく、間違ったデータを受信していた。このような伝送誤りは、キャラクタ保護期間の信号レベルを検査することによって、検出できる場合が多く、キャラクタ保護期間に信号レベルＬｏｗが検出されることをここではフレームエラーと呼ぶ。
【０００８】
これに対して、例えば特許文献１におけるＩＣカード接続装置のように、ＣＰＵによる受信データの読み出しが、次のデータの受信完了に間に合わない場合の対策が提案されてきた。これに対しては、受信データをＣＰＵが読み取るまで一時的に蓄えておく受信バッファの容量を大きくすれば、ＣＰＵの時間応答性の制約を小さくすることができる。
【０００９】
【特許文献１】
特開平９−１７９９４８号公報
【００１０】
【発明が解決しようとする課題】
しかしながら上記従来の構成では、複数の受信データにパリティエラーやフレームエラーがある場合に、それをＣＰＵに対してどのように通知するかという問題点を有していた。
【００１１】
また、受信エラーによって再送信要求を繰り返す状況においては、不正な受信データが連続して受信バッファに格納され、バッファがオーバーフローする恐れがあるという問題点を有していた。
【００１２】
【課題を解決するための手段】
この目的を達成するために、本発明のＩＣカード接続装置は、複数バイト分の受信データ、および各受信データに対応したパリティ検査結果やフレーム検査結果を対にして格納する受信バッファを備え、ＣＰＵが受信バッファから一対の受信データ、パリティ検査結果、フレーム検査結果を容易に読み出すことを可能とし、受信データが正しく受信されたものかを容易に判断することができる。このように本発明のＩＣカード接続装置はパリティエラーやフレームエラーが発生しても、確実に正しいデータを受信できることを特徴としたものである。
【００１３】
本発明によれば、ＣＰＵが受信データを読み出す時間的制約を大きく緩和するとともに、ＩＣカードとの間の確実なデータ伝送を実現することができる。
【００１４】
【発明の実施の形態】
本発明の請求項１に記載の発明は、ＩＣカードとの間でデータの送受信を行うＩＣカード接続装置であって、ＩＣカードから送られてくるデータおよびパリティ検査の結果を一対にして格納する受信バッファを備えることを特徴とするものであり、ＩＣカードから送られてくるデータを確実に受信するという作用を有する。
【００１５】
本発明の請求項２に記載の発明は、ＩＣカードとの間でデータの送受信を行うＩＣカード接続装置であって、ＩＣカードから送られてくるデータおよびパリティ検査の結果を一対にして格納する受信バッファを複数備えることを特徴とするものであり、ＣＰＵが受信データを読み出す時間的制約を緩和するとともにＩＣカードから送られてくるデータを確実に受信するという作用を有する。
【００１６】
本発明の請求項３に記載の発明は、ＩＣカードとの間でデータの送受信を行うＩＣカード接続装置であって、ＩＣカードから送られてくるデータおよびパリティ検査の結果を一対にして格納する受信バッファを備え、その受信バッファがＦＩＦＯメモリで構成されることを特徴とするものであり、ＣＰＵが受信データを読み出す時間的制約を緩和するとともにＩＣカードから送られてくるデータを確実に受信するという作用を有する。
【００１７】
本発明の請求項４に記載の発明は、ＩＣカードとの間でデータの送受信を行うＩＣカード接続装置であって、ＩＣカードから送られてくるデータおよびパリティ検査の結果を一対にして格納する受信バッファと、パリティ検査の結果を参照してその受信バッファに対する書き込みを制御する書き込み制御部とを備え、受信エラーによって再送信要求を繰り返す状況において不正な受信データが連続して受信バッファに格納されることによるバッファのオーバーフローを防ぐことを特徴とするものであり、ＣＰＵが受信データを読み出す時間的制約を緩和するとともにＩＣカードから送られてくるデータを確実に受信するという作用を有する。
【００１８】
本発明の請求項５に記載の発明は、ＩＣカードとの間でデータの送受信を行うＩＣカード接続装置であって、ＩＣカードから送られてくるデータおよびパリティ検査の結果を一対にして格納する受信バッファと、同一データの受信における再送信要求回数の上限を規定するリトライ回数上限レジスタと、同一データの受信におけるパリティエラーを検出した回数をカウントするエラー検出カウンタと、前記リトライ回数上限と前記パリティエラーを検出した回数を比較する比較部と、前記比較結果にもとづいてライトポインタを制御する書き込み制御部とを備え、受信エラーによる再送信要求を一定回数以上繰り返さないとともに、不正な受信データが連続して受信バッファに格納されることによるバッファのオーバーフローを防ぐことを特徴とするものであり、ＣＰＵが受信データを読み出す時間的制約を緩和するとともにＩＣカードから送られてくるデータを確実に受信するという作用を有する。
【００１９】
本発明の請求項６に記載の発明は、ＩＣカードとの間でデータの送受信を行うＩＣカード接続装置であって、ＩＣカードから送られてくるデータおよびフレーム検査の結果を一対にして格納する受信バッファを備えることを特徴とするものであり、ＩＣカードから送られてくるデータを確実に受信するという作用を有する。
【００２０】
本発明の請求項７に記載の発明は、ＩＣカードとの間でデータの送受信を行うＩＣカード接続装置であって、ＩＣカードから送られてくるデータおよびフレーム検査の結果を一対にして格納する受信バッファを複数備えることを特徴とするものであり、ＣＰＵが受信データを読み出す時間的制約を緩和するとともにＩＣカードから送られてくるデータを確実に受信するという作用を有する。
【００２１】
本発明の請求項８に記載の発明は、ＩＣカードとの間でデータの送受信を行うＩＣカード接続装置であって、ＩＣカードから送られてくるデータおよびフレーム検査の結果を一対にして格納する受信バッファを備え、その受信バッファがＦＩＦＯメモリで構成されることを特徴とするものであり、ＣＰＵが受信データを読み出す時間的制約を緩和するとともにＩＣカードから送られてくるデータを確実に受信するという作用を有する。
【００２２】
本発明の請求項９に記載の発明は、ＩＣカードとの間でデータの送受信を行うＩＣカード接続装置であって、ＩＣカードから送られてくるデータおよびフレーム検査の結果を一対にして格納する受信バッファと、フレーム検査の結果を参照してその受信バッファに対する書き込みを制御する書き込み制御部とを備え、受信エラーによって再送信要求を繰り返す状況において不正な受信データが連続して受信バッファに格納されることによるバッファのオーバーフローを防ぐことを特徴とするものであり、ＣＰＵが受信データを読み出す時間的制約を緩和するとともにＩＣカードから送られてくるデータを確実に受信するという作用を有する。
【００２３】
本発明の請求項１０に記載の発明は、ＩＣカードとの間でデータの送受信を行うＩＣカード接続装置であって、ＩＣカードから送られてくるデータおよびフレーム検査の結果を一対にして格納する受信バッファと、同一データの受信における再送信要求回数の上限を規定するリトライ回数上限レジスタと、同一データの受信におけるフレームエラーを検出した回数をカウントするエラー検出カウンタと、前記リトライ回数上限と前記フレームエラーを検出した回数を比較する比較部と、前記比較結果にもとづいてライトポインタを制御する書き込み制御部とを備え、受信エラーによる再送信要求を一定回数以上繰り返さないとともに、不正な受信データが連続して受信バッファに格納されることによるバッファのオーバーフローを防ぐことを特徴とするものであり、ＣＰＵが受信データを読み出す時間的制約を緩和するとともにＩＣカードから送られてくるデータを確実に受信するという作用を有する。
【００２４】
本発明の請求項１１に記載の発明は、ＩＣカードとの間でデータの送受信を行うＩＣカード接続装置であって、ＩＣカードから送られてくるデータおよびパリティ検査の結果およびフレーム検査の結果を一対にして格納する受信バッファを備えることを特徴とするものであり、ＩＣカードから送られてくるデータを確実に受信するという作用を有する。
【００２５】
本発明の請求項１２に記載の発明は、ＩＣカードとの間でデータの送受信を行うＩＣカード接続装置であって、ＩＣカードから送られてくるデータおよびパリティ検査の結果およびフレーム検査の結果を一対にして格納する受信バッファを複数備えることを特徴とするものであり、ＣＰＵが受信データを読み出す時間的制約を緩和するとともにＩＣカードから送られてくるデータを確実に受信するという作用を有する。
【００２６】
本発明の請求項１３に記載の発明は、ＩＣカードとの間でデータの送受信を行うＩＣカード接続装置であって、ＩＣカードから送られてくるデータおよびパリティ検査の結果およびフレーム検査の結果を一対にして格納する受信バッファを備え、その受信バッファがＦＩＦＯメモリで構成されることを特徴とするものであり、ＣＰＵが受信データを読み出す時間的制約を緩和するとともにＩＣカードから送られてくるデータを確実に受信するという作用を有する。
【００２７】
本発明の請求項１４に記載の発明は、ＩＣカードとの間でデータの送受信を行うＩＣカード接続装置であって、ＩＣカードから送られてくるデータおよびパリティ検査の結果およびフレーム検査の結果を一対にして格納する受信バッファと、パリティ検査の結果およびフレーム検査の結果を参照してその受信バッファに対する書き込みを制御する書き込み制御部とを備え、受信エラーによって再送信要求を繰り返す状況において不正な受信データが連続して受信バッファに格納されることによるバッファのオーバーフローを防ぐことを特徴とするものであり、ＣＰＵが受信データを読み出す時間的制約を緩和するとともにＩＣカードから送られてくるデータを確実に受信するという作用を有する。
【００２８】
本発明の請求項１５に記載の発明は、ＩＣカードとの間でデータの送受信を行うＩＣカード接続装置であって、ＩＣカードから送られてくるデータおよびパリティ検査の結果およびフレーム検査の結果を一対にして格納する受信バッファと、同一データの受信における再送信要求回数の上限を規定するリトライ回数上限レジスタと、同一データの受信における受信エラーを検出した回数をカウントするエラー検出カウンタと、前記リトライ回数上限と前記受信エラーを検出した回数を比較する比較部と、前記比較結果にもとづいてライトポインタを制御する書き込み制御部を備え、受信エラーによる再送信要求を一定回数以上繰り返さないとともに、不正な受信データが連続して受信バッファに格納されることによるバッファのオーバーフローを防ぐことを特徴とするものであり、ＣＰＵが受信データを読み出す時間的制約を緩和するとともにＩＣカードから送られてくるデータを確実に受信するという作用を有する。
【００２９】
以下、本発明の実施の形態について、図１から図１６を用いて説明する。
【００３０】
（実施の形態１）
図１は、ＩＣカードから送られてくるデータをパリティ検査の結果と一対にして受信バッファに格納するＩＣカード接続装置を示す。図１において、１００はＣＰＵである。２００はＩＣカード接続装置である。２０１は送信データを一時的に格納する送信バッファである。２０２は送信データからパリティビットを生成するパリティ生成部である。２０３はスタートビット、送信データ８ビット、パリティビットをシリアルに送信するパラレル／シリアル変換部である。２０４はＩＣカードに対して再送信要求信号を発行する再送信要求部である。２１１は、ＩＣカードへのデータ送信とＩＣカードからのデータ受信とを切り替える送受信切替部である。２１２はＩＣカードからシリアルに送られてくるデータを受信するシリアル／パラレル変換部である。２１３は受信したパリティビットと受信データから算出されるパリティとを比較するパリティ検査部である。２１４は受信データとパリティ検査の結果を一対にして一時的に蓄えておく受信バッファである。５００はＩＣカードである。
【００３１】
以上のように構成されたＩＣカード接続装置について、以下にその動作を述べる。ＩＣカードからシリアルに送られてくるデータは、図１４のようにスタートビットで始まり、データ８ビット、パリティビットで構成され、送受信切替部２１１を経て、シリアル／パラレル変換部２１２において受信される。続いて、パリティ検査部２１３において、受信データ８ビットから算出されるパリティと受信したパリティが一致するかを検査する。その後、受信データおよびパリティ検査の結果は受信バッファ２１４に格納される。パリティが一致しない場合は、再送信要求部２０４に通知され、再送信要求部２０４はＩＣカード５００に対して再送信要求信号を送出する。
【００３２】
次に、受信バッファ２１４の構成について、図２を用いて説明する。図２は受信データ８ビットとパリティ検査の結果１ビットを一対とした合計９ビットを１ワードとするＦＩＦＯ（Ｆｉｒｓｔ  Ｉｎ  Ｆｉｒｓｔ  Ｏｕｔ）メモリで構成され、ライトポインタＷＰが示すアドレスに受信データおよびパリティ検査の結果が書き込まれ、リードポインタＲＰが示すアドレスからＣＰＵ１００がデータＲＤを読み出す。ＣＰＵ１００は、読み出したデータＲＤのパリティ検査結果のビットによって、受信データが正しいか否かを判断することができる。
【００３３】
（実施の形態２）
図３は、ＩＣカードから送られてくるデータおよびパリティ検査の結果を一対にして格納する受信バッファと、パリティ検査の結果を参照してその受信バッファに対する書き込みを制御する書き込み制御部とを備え、受信エラーによって再送信要求を繰り返す状況において不正な受信データが連続して受信バッファに格納されることによるバッファのオーバーフローを防ぐことを特徴とするＩＣカード接続装置を示す。図３において、１００はＣＰＵである。２００はＩＣカード接続装置である。２０１は送信データを一時的に蓄える送信バッファである。２０２は送信データからパリティビットを生成するパリティ生成部である。２０３はスタートビット、送信データ８ビット、パリティビットをシリアルに送信するパラレル／シリアル変換部である。２０４はＩＣカードに対して再送信要求信号を発行する再送信要求部である。２１１は、ＩＣカードへのデータ送信とＩＣカードからのデータ受信とを切り替える送受信切替部である。２１２はＩＣカードからシリアルに送られてくるデータを受信するシリアル／パラレル変換部である。２１３は受信したパリティビットと受信データから算出されるパリティとを比較するパリティ検査部である。２１４は受信データとパリティ検査の結果を一対にして一時的に蓄えておく受信バッファである。２１５はパリティ検査の結果を参照して、受信バッファに対する書き込みを制御する書き込み制御部である。５００はＩＣカードである。
【００３４】
以上のように構成されたＩＣカード接続装置について、以下にその動作を述べる。ＩＣカードからシリアルに送られてくるデータは、送受信切替部２１１を経て、シリアル／パラレル変換部２１２において受信される。続いて、パリティ検査部２１３において、受信データ８ビットから算出されるパリティと受信したパリティが一致するかを検査する。その後、受信データおよびパリティ検査の結果は受信バッファ２１４に格納される。パリティが一致しない場合、再送信要求部２０４に通知され、再送信要求部２０４はＩＣカード５００に対して再送信要求信号を送出し、書き込み制御部２１５はライトポインタＷＰをインクリメントしない。パリティが一致する場合、書き込み制御部２１５はライトポインタＷＰをインクリメントし、次の受信データの書き込みに備える。
【００３５】
（実施の形態３）
図４は、ＩＣカードから送られてくるデータおよびパリティ検査の結果を一対にして格納する受信バッファと、同一データの受信における再送信要求回数の上限を規定するリトライ回数上限レジスタと、同一データの受信におけるパリティエラーを検出した回数をカウントするエラー検出カウンタと、前記リトライ回数上限と前記パリティエラーを検出した回数を比較する比較部と、前記比較結果にもとづいてライトポインタを制御する書き込み制御部とを備え、受信エラーによる再送信要求を一定回数以上繰り返さないとともに、不正な受信データが連続して受信バッファに格納されることによるバッファのオーバーフローを防ぐことを特徴とするＩＣカード接続装置を示す。図４において、１００はＣＰＵである。２００はＩＣカード接続装置である。２０１は送信データを一時的に蓄える送信バッファである。２０２は送信データからパリティビットを生成するパリティ生成部である。２０３はスタートビット、送信データ８ビット、パリティビットをシリアルに送信するパラレル／シリアル変換部である。２０４はＩＣカードに対して再送信要求信号を発行する再送信要求部である。２１１は、ＩＣカードへのデータ送信とＩＣカードからのデータ受信とを切り替える送受信切替部である。２１２はＩＣカードからシリアルに送られてくるデータを受信するシリアル／パラレル変換部である。２１３は受信したパリティビットと受信データから算出されるパリティとを比較するパリティ検査部である。３０１は同一データの受信における再送信要求回数の上限を規定するリトライ回数上限レジスタである。３０３は同一データの受信におけるパリティエラーを検出した回数をカウントするエラー検出カウンタである。３０２は前記リトライ回数上限と前記パリティエラーを検出した回数を比較する比較部である。２１５は前記比較結果にもとづいてライトポインタを制御する書き込み制御部である。５００はＩＣカードである。
【００３６】
以上のように構成されたＩＣカード接続装置について、以下にその動作を述べる。ＣＰＵ１００は、ＩＣカード接続装置２００がデータ受信を開始する前に、同一データに対する再送信要求を行う回数の上限値をリトライ回数上限レジスタ３０１に設定する。エラー検出カウンタ３０３はカウンタ値を０にクリアされる。
【００３７】
データ受信開始後、ＩＣカードからシリアルに送られてくるデータは、送受信切替部２１１を経て、シリアル／パラレル変換部２１２において受信される。続いて、パリティ検査部２１３において、受信データ８ビットから算出されるパリティと受信したパリティが一致するかを検査する。その後、受信データおよびパリティ検査の結果は受信バッファ２１４に格納される。パリティが一致しない場合、エラー検出カウンタ３０３に通知され、エラー検出カウンタ３０３はカウンタ値をインクリメントする。比較部３０２において、エラー検出カウンタの値とリトライ回数上限レジスタの値が比較され、（エラー検出カウンタの値＜リトライ回数上限レジスタの値）が成り立つ場合は、再送信要求部２０４にパリティエラーが通知され、再送信要求部２０４はＩＣカード５００に対して再送信要求信号を送出する。また、書き込み制御部２１５はライトポインタＷＰをインクリメントしない。これによって、不正な受信データが連続して受信バッファに格納されることによるバッファのオーバーフローを防止する。（エラー検出カウンタの値＝リトライ回数上限レジスタの値）が成り立つ場合は、再送信要求部２０４にパリティエラーを通知せず、再送信要求部２０４はＩＣカード５００に対して再送信要求信号を送出しない。これによって、再送信要求を無限に繰り返すことを防止する。
【００３８】
また、書き込み制御部２１５はライトポインタＷＰをインクリメントし、次の受信データの書き込みに備える。
【００３９】
（実施の形態４）
図５は、ＩＣカードから送られてくるデータをフレーム検査の結果と一対にして受信バッファに格納するＩＣカード接続装置を示す。図５において、１００はＣＰＵである。２００はＩＣカード接続装置である。２０１は送信データを一時的に格納する送信バッファである。２０２は送信データからパリティビットを生成するパリティ生成部である。２０３はスタートビット、送信データ８ビット、パリティビットをシリアルに送信するパラレル／シリアル変換部である。２０４はＩＣカードに対して再送信要求信号を発行する再送信要求部である。２１１は、ＩＣカードへのデータ送信とＩＣカードからのデータ受信とを切り替える送受信切替部である。２１２はＩＣカードからシリアルに送られてくるデータを受信するシリアル／パラレル変換部である。２１６はキャラクタ保護期間におけるデータラインの信号レベルを検査するフレーム検査部である。２１７は受信データとフレーム検査の結果を一対にして一時的に蓄えておく受信バッファである。５００はＩＣカードである。
【００４０】
以上のように構成されたＩＣカード接続装置について、以下にその動作を述べる。ＩＣカードからシリアルに送られてくるデータは送受信切替部２１１を経て、シリアル／パラレル変換部２１２において受信される。続いて、フレーム検査部２１６において、キャラクタ保護期間におけるデータラインの信号レベルを検査する。その後、受信データおよびフレーム検査の結果は受信バッファ２１７に格納される。フレームエラーの場合は、再送信要求部２０４に通知され、再送信要求部２０４はＩＣカード５００に対して再送信要求信号を送出する。
【００４１】
次に、受信バッファ２１７の構成について、図６を用いて説明する。図６は受信データ８ビットとフレーム検査の結果１ビットを一対とした合計９ビットを１ワードとするＦＩＦＯメモリで構成され、ライトポインタＷＰが示すアドレスに受信データおよびフレーム検査の結果が書き込まれ、リードポインタＲＰが示すアドレスからＣＰＵ１００がデータＲＤを読み出す。ＣＰＵ１００は、読み出したデータＲＤのフレーム検査結果のビットによって、受信データが正しいか否かを判断することができる。
【００４２】
（実施の形態５）
図７は、ＩＣカードから送られてくるデータおよびフレーム検査の結果を一対にして格納する受信バッファと、フレーム検査の結果を参照してその受信バッファに対する書き込みを制御する書き込み制御部とを備え、受信エラーによって再送信要求を繰り返す状況において不正な受信データが連続して受信バッファに格納されることによるバッファのオーバーフローを防ぐことを特徴とするＩＣカード接続装置を示す。図７において、１００はＣＰＵである。２００はＩＣカード接続装置である。２０１は送信データを一時的に蓄える送信バッファである。２０２は送信データからパリティビットを生成するパリティ生成部である。２０３はスタートビット、送信データ８ビット、パリティビットをシリアルに送信するパラレル／シリアル変換部である。２０４はＩＣカードに対して再送信要求信号を発行する再送信要求部である。２１１は、ＩＣカードへのデータ送信とＩＣカードからのデータ受信とを切り替える送受信切替部である。２１２はＩＣカードからシリアルに送られてくるデータを受信するシリアル／パラレル変換部である。２１６はキャラクタ保護期間におけるデータラインの信号レベルを検査するフレーム検査部である。２１７は受信データとフレーム検査の結果を一対にして一時的に蓄えておく受信バッファである。２１５はフレーム検査の結果を参照して、受信バッファに対する書き込みを制御する書き込み制御部である。５００はＩＣカードである。
【００４３】
以上のように構成されたＩＣカード接続装置について、以下にその動作を述べる。ＩＣカードからシリアルに送られてくるデータは、送受信切替部２１１を経て、シリアル／パラレル変換部２１２において受信される。続いて、フレーム検査部２１６において、キャラクタ保護期間におけるデータラインの信号レベルを検査する。その後、受信データおよびフレーム検査の結果は受信バッファ２１７に格納される。フレームエラーの場合、再送信要求部２０４に通知され、再送信要求部２０４はＩＣカード５００に対して再送信要求信号を送出し、書き込み制御部２１５はライトポインタＷＰをインクリメントしない。フレームエラーでない場合、書き込み制御部２１５はライトポインタＷＰをインクリメントし、次の受信データの書き込みに備える。
【００４４】
（実施の形態６）
図８は、ＩＣカードから送られてくるデータおよびフレーム検査の結果を一対にして格納する受信バッファと、同一データの受信における再送信要求回数の上限を規定するリトライ回数上限レジスタと、同一データの受信におけるフレームエラーを検出した回数をカウントするエラー検出カウンタと、前記リトライ回数上限と前記フレームエラーを検出した回数を比較する比較部と、前記比較結果にもとづいてライトポインタを制御する書き込み制御部とを備え、受信エラーによる再送信要求を一定回数以上繰り返さないとともに、不正な受信データが連続して受信バッファに格納されることによるバッファのオーバーフローを防ぐことを特徴とするＩＣカード接続装置を示す。図８において、１００はＣＰＵである。２００はＩＣカード接続装置である。２０１は送信データを一時的に蓄える送信バッファである。２０２は送信データからパリティビットを生成するパリティ生成部である。２０３はスタートビット、送信データ８ビット、パリティビットをシリアルに送信するパラレル／シリアル変換部である。２０４はＩＣカードに対して再送信要求信号を発行する再送信要求部である。２１１は、ＩＣカードへのデータ送信とＩＣカードからのデータ受信とを切り替える送受信切替部である。２１２はＩＣカードからシリアルに送られてくるデータを受信するシリアル／パラレル変換部である。２１６はキャラクタ保護期間におけるデータラインの信号レベルを検査するフレーム検査部である。２１７は受信データとフレーム検査の結果を一対にして一時的に蓄えておく受信バッファである。３０１は同一データの受信における再送信要求回数の上限を規定するリトライ回数上限レジスタである。３０３は同一データの受信におけるフレームエラーを検出した回数をカウントするエラー検出カウンタである。３０２は前記リトライ回数上限と前記フレームエラーを検出した回数を比較する比較部である。２１５は前記比較結果にもとづいてライトポインタを制御する書き込み制御部である。５００はＩＣカードである。
【００４５】
以上のように構成されたＩＣカード接続装置について、以下にその動作を述べる。ＣＰＵ１００は、ＩＣカード接続装置２００がデータ受信を開始する前に、同一データに対する再送信要求を行う回数の上限値をリトライ回数上限レジスタ３０１に設定する。エラー検出カウンタ３０３はカウンタ値を０にクリアされる。
【００４６】
データ受信開始後、ＩＣカードからシリアルに送られてくるデータは、送受信切替部２１１を経て、シリアル／パラレル変換部２１２において受信される。続いて、フレーム検査部２１６において、キャラクタ保護期間におけるデータラインの信号レベルを検査する。その後、受信データおよびフレーム検査の結果は受信バッファ２１７に格納される。フレームエラーの場合、エラー検出カウンタ３０３に通知され、エラー検出カウンタ３０３はカウンタ値をインクリメントする。比較部３０２において、エラー検出カウンタの値とリトライ回数上限レジスタの値が比較され、（エラー検出カウンタの値＜リトライ回数上限レジスタの値）が成り立つ場合は、再送信要求部２０４にフレームエラーが通知され、再送信要求部２０４はＩＣカード５００に対して再送信要求信号を送出する。また、書き込み制御部２１５はライトポインタＷＰをインクリメントしない。これによって、不正な受信データが連続して受信バッファに格納されることによるバッファのオーバーフローを防止する。（エラー検出カウンタの値＝リトライ回数上限レジスタの値）が成り立つ場合は、再送信要求部２０４にフレームエラーを通知せず、再送信要求部２０４はＩＣカード５００に対して再送信要求信号を送出しない。これによって、再送信要求を無限に繰り返すことを防止する。
【００４７】
また、書き込み制御部２１５はライトポインタＷＰをインクリメントし、次の受信データの書き込みに備える。
【００４８】
（実施の形態７）
図９は、ＩＣカードから送られてくるデータをパリティ検査の結果およびフレーム検査の結果と一対にして受信バッファに格納するＩＣカード接続装置を示す。図９において、１００はＣＰＵである。２００はＩＣカード接続装置である。２０１は送信データを一時的に格納する送信バッファである。２０２は送信データからパリティビットを生成するパリティ生成部である。２０３はスタートビット、送信データ８ビット、パリティビットをシリアルに送信するパラレル／シリアル変換部である。２０４はＩＣカードに対して再送信要求信号を発行する再送信要求部である。２１１は、ＩＣカードへのデータ送信とＩＣカードからのデータ受信とを切り替える送受信切替部である。２１２はＩＣカードからシリアルに送られてくるデータを受信するシリアル／パラレル変換部である。２１８は受信したパリティビットと受信データから算出されるパリティとを比較するとともに、キャラクタ保護期間におけるデータラインの信号レベルを検査するフレーム／パリティ検査部である。２１９は受信データとパリティ検査の結果とフレーム検査の結果を一対にして一時的に蓄えておく受信バッファである。５００はＩＣカードである。
【００４９】
以上のように構成されたＩＣカード接続装置について、以下にその動作を述べる。ＩＣカードからシリアルに送られてくるデータは送受信切替部２１１を経て、シリアル／パラレル変換部２１２において受信される。続いて、フレーム／パリティ検査部２１８において、受信データ８ビットから算出されるパリティと受信したパリティが一致するかを検査するとともに、キャラクタ保護期間におけるデータラインの信号レベルを検査する。その後、受信データおよびフレーム検査の結果は受信バッファ２１９に格納される。パリティエラーまたはフレームエラーの場合は、再送信要求部２０４に通知され、再送信要求部２０４はＩＣカード５００に対して再送信要求信号を送出する。
【００５０】
次に、受信バッファ２１９の構成について、図１０を用いて説明する。図６は受信データ８ビットとパリティ検査の結果１ビットとフレーム検査の結果１ビットを一対とした合計１０ビットを１ワードとするＦＩＦＯメモリで構成され、ライトポインタＷＰが示すアドレスに受信データおよびパリティ検査の結果およびフレーム検査の結果が書き込まれ、リードポインタＲＰが示すアドレスからＣＰＵ１００がデータＲＤを読み出す。ＣＰＵ１００は、読み出したデータＲＤのパリティ検査結果のビットおよびフレーム検査結果のビットによって、受信データが正しいか否かを判断することができる。
【００５１】
（実施の形態８）
図１１は、ＩＣカードから送られてくるデータおよびパリティ検査の結果およびフレーム検査の結果を一対にして格納する受信バッファと、パリティ検査およびフレーム検査の結果を参照してその受信バッファに対する書き込みを制御する書き込み制御部とを備え、受信エラーによって再送信要求を繰り返す状況において不正な受信データが連続して受信バッファに格納されることによるバッファのオーバーフローを防ぐことを特徴とするＩＣカード接続装置を示す。図１１において、１００はＣＰＵである。２００はＩＣカード接続装置である。２０１は送信データを一時的に蓄える送信バッファである。２０２は送信データからパリティビットを生成するパリティ生成部である。２０３はスタートビット、送信データ８ビット、パリティビットをシリアルに送信するパラレル／シリアル変換部である。２０４はＩＣカードに対して再送信要求信号を発行する再送信要求部である。２１１は、ＩＣカードへのデータ送信とＩＣカードからのデータ受信とを切り替える送受信切替部である。２１２はＩＣカードからシリアルに送られてくるデータを受信するシリアル／パラレル変換部である。２１８は受信したパリティビットと受信データから算出されるパリティとを比較するとともに、キャラクタ保護期間におけるデータラインの信号レベルを検査するフレーム／パリティ検査部である。２１９は受信データとパリティ検査の結果とフレーム検査の結果を一対にして一時的に蓄えておく受信バッファである。２１５はフレーム／パリティ検査の結果を参照して、受信バッファに対する書き込みを制御する書き込み制御部である。５００はＩＣカードである。
【００５２】
以上のように構成されたＩＣカード接続装置について、以下にその動作を述べる。ＩＣカードからシリアルに送られてくるデータは、送受信切替部２１１を経て、シリアル／パラレル変換部２１２において受信される。続いて、フレーム／パリティ検査部２１８において、受信データ８ビットから算出されるパリティと受信したパリティが一致するかを検査するとともに、キャラクタ保護期間におけるデータラインの信号レベルを検査する。その後、受信データおよびパリティ検査の結果およびフレーム検査の結果は受信バッファ２１９に格納される。パリティエラーまたはフレームエラーの場合は、再送信要求部２０４に通知され、再送信要求部２０４はＩＣカード５００に対して再送信要求信号を送出し、書き込み制御部２１５はライトポインタＷＰをインクリメントしない。パリティエラーまたはフレームエラーでない場合、書き込み制御部２１５はライトポインタＷＰをインクリメントし、次の受信データの書き込みに備える。
【００５３】
（実施の形態９）
図１２は、ＩＣカードから送られてくるデータおよびパリティ検査の結果およびフレーム検査の結果を一対にして格納する受信バッファと、同一データの受信における再送信要求回数の上限を規定するリトライ回数上限レジスタと、同一データの受信におけるパリティエラーまたはフレームエラーを検出した回数をカウントするエラー検出カウンタと、前記リトライ回数上限と前記受信エラーを検出した回数を比較する比較部と、前記比較結果にもとづいてライトポインタを制御する書き込み制御部とを備え、受信エラーによる再送信要求を一定回数以上繰り返さないとともに、不正な受信データが連続して受信バッファに格納されることによるバッファのオーバーフローを防ぐことを特徴とするＩＣカード接続装置を示す。図１２において、１００はＣＰＵである。２００はＩＣカード接続装置である。２０１は送信データを一時的に蓄える送信バッファである。２０２は送信データからパリティビットを生成するパリティ生成部である。２０３はスタートビット、送信データ８ビット、パリティビットをシリアルに送信するパラレル／シリアル変換部である。２０４はＩＣカードに対して再送信要求信号を発行する再送信要求部である。２１１は、ＩＣカードへのデータ送信とＩＣカードからのデータ受信とを切り替える送受信切替部である。２１２はＩＣカードからシリアルに送られてくるデータを受信するシリアル／パラレル変換部である。２１８は受信したパリティビットと受信データから算出されるパリティとを比較するとともに、キャラクタ保護期間におけるデータラインの信号レベルを検査するフレーム／パリティ検査部である。２１９は受信データとパリティ検査の結果とフレーム検査の結果を一対にして一時的に蓄えておく受信バッファである。３０１は同一データの受信における再送信要求回数の上限を規定するリトライ回数上限レジスタである。３０３は同一データの受信におけるパリティエラーまはたフレームエラーを検出した回数をカウントするエラー検出カウンタである。３０２は前記リトライ回数上限と前記受信エラーを検出した回数を比較する比較部である。２１５は前記比較結果にもとづいてライトポインタを制御する書き込み制御部である。５００はＩＣカードである。
【００５４】
以上のように構成されたＩＣカード接続装置について、以下にその動作を述べる。ＣＰＵ１００は、ＩＣカード接続装置２００がデータ受信を開始する前に、同一データに対する再送信要求を行う回数の上限値をリトライ回数上限レジスタ３０１に設定する。エラー検出カウンタ３０３はカウンタ値を０にクリアされる。
【００５５】
データ受信開始後、ＩＣカードからシリアルに送られてくるデータは、送受信切替部２１１を経て、シリアル／パラレル変換部２１２において受信される。続いて、フレーム／パリティ検査部２１８において、受信データ８ビットから算出されるパリティと受信したパリティが一致するかを検査するとともに、キャラクタ保護期間におけるデータラインの信号レベルを検査する。その後、受信データおよびパリティ検査の結果およびフレーム検査の結果は受信バッファ２１９に格納される。パリティエラーまたはフレームエラーの場合、エラー検出カウンタ３０３に通知され、エラー検出カウンタ３０３はカウンタ値をインクリメントする。比較部３０２において、エラー検出カウンタの値とリトライ回数上限レジスタの値が比較され、（エラー検出カウンタの値＜リトライ回数上限レジスタの値）が成り立つ場合は、再送信要求部２０４に受信エラーが通知され、再送信要求部２０４はＩＣカード５００に対して再送信要求信号を送出する。また、書き込み制御部２１５はライトポインタＷＰをインクリメントしない。これによって、不正な受信データが連続して受信バッファに格納されることによるバッファのオーバーフローを防止する。（エラー検出カウンタの値＝リトライ回数上限レジスタの値）が成り立つ場合は、再送信要求部２０４に受信エラーを通知せず、再送信要求部２０４はＩＣカード５００に対して再送信要求信号を送出しない。これによって、再送信要求を無限に繰り返すことを防止する。
【００５６】
また、書き込み制御部２１５はライトポインタＷＰをインクリメントし、次の受信データの書き込みに備える。
【００５７】
【発明の効果】
上記のように本発明によれば、従来のＩＣカード接続装置では検出できなかったフレームエラーや受信オーバーランを検出し、パリティエラー検出時の再送信要求を行う機能を利用して再送信を要求し、同一データを再度受信することによって、ＩＣカードから送られてくるデータを確実に受信することができる。
【図面の簡単な説明】
【図１】本発明の実施の形態１におけるＩＣカード接続装置のシステム図
【図２】本発明の実施の形態１における受信バッファの構成図
【図３】本発明の実施の形態２におけるＩＣカード接続装置のシステム図
【図４】本発明の実施の形態３におけるＩＣカード接続装置のシステム図
【図５】本発明の実施の形態４におけるＩＣカード接続装置のシステム図
【図６】本発明の実施の形態４における受信バッファの構成図
【図７】本発明の実施の形態５におけるＩＣカード接続装置のシステム図
【図８】本発明の実施の形態６におけるＩＣカード接続装置のシステム図
【図９】本発明の実施の形態７におけるＩＣカード接続装置のシステム図
【図１０】本発明の実施の形態７における受信バッファの構成図
【図１１】本発明の実施の形態８におけるＩＣカード接続装置のシステム図
【図１２】本発明の実施の形態９におけるＩＣカード接続装置のシステム図
【図１３】従来のＩＣカード接続装置のシステム図
【図１４】従来の通常のＩＣカードの伝送データフォーマット図
【図１５】従来の受信エラー時の再送信要求信号を含むＩＣカードの伝送データフォーマット図
【図１６】従来のＩＣカードとＩＣカード接続装置間のデータ伝送におけるタイミング図
【符号の説明】
１００  ＣＰＵ
２００  ＩＣカード接続装置
２０１  送信バッファ
２０２  パリティ生成部
２０３  パラレル／シリアル変換部
２０４  再送信要求信号生成部
２１１  送受信切替部
２１２  シリアル／パラレル変換部
２１３  パリティ検査部
２１４  受信バッファ
２１５  書き込み制御部
２１６  フレーム検査部
２１７  受信バッファ
２１８  フレーム／パリティ検査部
２１９  受信バッファ
３０１  リトライ回数上限レジスタ
３０２  比較部
３０３  エラー検出カウンタ
４０１  受信バッファ
５００  ＩＣカード
ＲＤ１  ＣＰＵ１００が受信バッファ２１４から読み出したデータ
ＲＤ２  ＣＰＵ１００が受信バッファ２１７から読み出したデータ
ＲＤ３  ＣＰＵ１００が受信バッファ２１９から読み出したデータ
ＲＰ  ＣＰＵ１００が受信バッファからデータを読み出すアドレス
ＷＰ  受信バッファにデータを書き込むアドレス
ＴＤ  ＣＰＵ１００が送信バッファ２０１に書き込む送信データ
【図１】
2004326685.tif 000003
【図２】
2004326685.tif 000004
【図３】
2004326685.tif 000005
【図４】
2004326685.tif 000006
【図５】
2004326685.tif 000007
【図６】
2004326685.tif 000008
【図７】
2004326685.tif 000009
【図８】
2004326685.tif 000010
【図９】
2004326685.tif 000011
【図１０】
2004326685.tif 000012
【図１１】
2004326685.tif 000013
【図１２】
2004326685.tif 000014
【図１３】
2004326685.tif 000015
【図１４】
2004326685.tif 000016
【図１５】
2004326685.tif 000017
【図１６】
2004326685.tif 000018