(57)【要約】【課題】  エラーの原因を容易に特定することができる携帯可能電子装置、及び携帯可能電子装置の処理システムを提供する。【解決手段】  一実施形態に係る携帯可能電子装置は、外部機器から送信されるコマンドを受信する受信部と、受信部により受信するコマンドを一時的に記憶する受信レジスタと、受信部によりコマンドの受信が正常に完了したか否か判断し、コマンドの受信が正常に完了したと判断した場合、コマンドを受信データとして記憶する第１の記憶部と、受信レジスタにより記憶されているコマンドに基づいて処理を行いレスポンスを生成するコマンド処理部と、コマンド処理部により生成された外部機器に送信するレスポンスを一時的に記憶する送信レジスタと、送信レジスタにより記憶されているレスポンスを外部機器に送信する送信部と、送信部によりレスポンスの送信が正常に完了したか否か判断し、レスポンスの送信が正常に完了したと判断した場合、レスポンスを送信データとして記憶する第２の記憶部と、を具備する。【選択図】      図２
2012208910.tif 000002
【特許請求の範囲】
【請求項１】
外部機器から入力されるコマンドに応じて動作する携帯可能電子装置であって、
前記外部機器から送信される前記コマンドを受信する受信部と、
前記受信部により受信する前記コマンドを一時的に記憶する受信レジスタと、
前記受信部により前記コマンドの受信が正常に完了したか否か判断し、前記コマンドの受信が正常に完了したと判断した場合、前記コマンドを受信データとして記憶する第１の記憶部と、
前記受信レジスタにより記憶されている前記コマンドに基づいて処理を行いレスポンスを生成するコマンド処理部と、
前記コマンド処理部により生成された前記外部機器に送信する前記レスポンスを一時的に記憶する送信レジスタと、
前記送信レジスタにより記憶されている前記レスポンスを前記外部機器に送信する送信部と、
前記送信部により前記レスポンスの送信が正常に完了したか否か判断し、前記レスポンスの送信が正常に完了したと判断した場合、前記レスポンスを送信データとして記憶する第２の記憶部と、
を具備する携帯可能電子装置。
【請求項２】
前記第１の記憶部は、前記コマンドが予め設定された種類のコマンドであり、且つ、前記コマンドの受信が正常に完了したと判断した場合、前記コマンドを受信データとして記憶し、
前記第２の記憶部は、前記コマンドが予め設定された種類のコマンドであり、且つ、前記レスポンスの送信が正常に完了したと判断した場合、前記レスポンスを送信データとして記憶する、
請求項１に記載の携帯可能電子装置。
【請求項３】
前記第１の記憶部は、前記コマンドの受信が正常に完了したと判断した場合、前記コマンドの予め設定されたフィールドを受信データとして記憶する、請求項１に記載の携帯可能電子装置。
【請求項４】
前記第２の記憶部は、前記レスポンスの送信が正常に完了したと判断した場合、前記レスポンスの予め設定されたフィールドを送信データとして記憶する、請求項３に記載の携帯可能電子装置。
【請求項５】
前記第１の記憶部は、
前記コマンドの受信が正常に完了したと判断した場合、予め設定された数の受信データを記憶しているか否か判定し、
予め設定された数の受信データを記憶していると判定した場合、最も古い受信データに新たな受信データを上書きし、
予め設定された数の受信データを記憶していないと判定した場合、受信データを追記し、
前記第２の記憶部は、
前記レスポンスの送信が正常に完了したと判断した場合、予め設定された数の送信データを記憶しているか否か判定し、
予め設定された数の送信データを記憶していると判定した場合、最も古い送信データに新たな送信データを上書きし、
予め設定された数の送信データを記憶していないと判定した場合、送信データを追記する、
請求項１に記載の携帯可能電子装置。
【請求項６】
前記第１の記憶部は、
前記コマンドの受信が正常に完了したと判断した場合、空き容量があるか否か判定し、
空き容量がないと判定した場合、最も古い受信データに新たな受信データを上書きし、
空き容量があると判定した場合、受信データを追記し、
前記第２の記憶部は、
前記レスポンスの送信が正常に完了したと判断した場合、空き容量があるか否か判定し、
空き容量がないと判定した場合、最も古い送信データに新たな送信データを上書きし、
空き容量があると判定した場合、送信データを追記する、
請求項１に記載の携帯可能電子装置。
【請求項７】
データを一時的に記憶する揮発性メモリと、
データを非一時的に記憶する不揮発性メモリと、
をさらに具備し、
前記第１の記憶部は、予め設定された設定情報に基づいて、受信データを前記揮発性メモリと前記不揮発性メモリとのいずれか、または両方に記憶し、
前記第２の記憶部は、予め設定された設定情報に基づいて、送信データを前記揮発性メモリと前記不揮発性メモリとのいずれか、または両方に記憶する、
請求項１に記載の携帯可能電子装置。
【請求項８】
前記コマンド処理部は、前記第１の記憶部により記憶されている前記受信データと前記第２の記憶部により記憶されている前記送信データとを読み出す状態読出コマンドを前記受信部により受信する場合、前記第１の記憶部により記憶されている前記受信データと前記第２の記憶部により記憶されている前記送信データとを読み出し、読み出した前記受信データ及び前記送信データを含むレスポンスを生成する、
請求項１に記載の携帯可能電子装置。
【請求項９】
前記コマンド処理部は、前記状態読出コマンドを受信した場合、前記第１の記憶部により記憶されている全ての受信データと前記第２の記憶部により記憶されている全ての送信データとを読み出し、読み出した前記受信データ及び前記送信データを含むレスポンスを生成する、請求項８に記載の携帯可能電子装置。
【請求項１０】
前記コマンド処理部は、前記状態読出コマンドを受信した場合、前記第１の記憶部により記憶されている全ての受信データを読み出し、読み出した前記受信データを含むレスポンスを生成する、請求項８に記載の携帯可能電子装置。
【請求項１１】
前記コマンド処理部は、前記状態読出コマンドを受信した場合、前記第２の記憶部により記憶されている全ての送信データを読み出し、読み出した前記送信データを含むレスポンスを生成する、請求項８に記載の携帯可能電子装置。
【請求項１２】
前記コマンド処理部は、前記状態読出コマンドを受信した場合、前記第１の記憶部により記憶されている受信データと前記第２の記憶部により記憶されている送信データとを１つずつ読み出し、読み出した前記受信データ及び前記送信データを含むレスポンスを生成する、請求項８に記載の携帯可能電子装置。
【請求項１３】
前記コマンド処理部は、前記状態読出コマンドを受信した場合、前記第１の記憶部により記憶されている受信データと前記第２の記憶部により記憶されている送信データとを前記状態読出しコマンドにより指定された数ずつ読み出し、読み出した前記受信データ及び前記送信データを含むレスポンスを生成する、請求項８に記載の携帯可能電子装置。
【請求項１４】
前記各部を備えるＩＣモジュールと、
前記ＩＣモジュールが配設される本体と、
を具備する請求項１に記載の携帯可能電子装置。
【請求項１５】
携帯可能電子装置を処理する端末装置と、前記端末装置から入力されるコマンドに応じて動作する携帯可能電子装置とを有する携帯可能電子装置の処理システムであって、
前記端末装置は、
前記コマンドを生成し、生成した前記コマンドを前記携帯可能電子装置に送信する第１の送信部と、
前記携帯可能電子装置から送信されるレスポンスを受信する第１の受信部と、
を具備し、
前記携帯可能電子装置は、
前記端末装置から送信される前記コマンドを受信する第２の受信部と、
前記第２の受信部により受信する前記コマンドを一時的に記憶する受信レジスタと、
前記第２の受信部により前記コマンドの受信が正常に完了したか否か判断し、前記コマンドの受信が正常に完了したと判断した場合、前記コマンドを受信データとして記憶する第１の記憶部と、
前記受信レジスタにより記憶されている前記コマンドに基づいて処理を行いレスポンスを生成するコマンド処理部と、
前記コマンド処理部により生成された前記端末装置に送信する前記レスポンスを一時的に記憶する送信レジスタと、
前記送信レジスタにより記憶されている前記レスポンスを前記端末装置に送信する第２の送信部と、
前記第２の送信部により前記レスポンスの送信が正常に完了したか否か判断し、前記レスポンスの送信が正常に完了したと判断した場合、前記レスポンスを送信データとして記憶する第２の記憶部と、
を具備する携帯可能電子装置の処理システム。
【請求項１６】
前記第１の送信部は、前記携帯可能電子装置に前記コマンドを送信してから予め設定される所定時間内に前記第１の受信部により前記レスポンスを受信したか否か判断し、所定時間内に前記レスポンスを受信しなかったと判断した場合、前記第１の記憶部により記憶されている前記受信データと前記第２の記憶部により記憶されている前記送信データとを読み出す状態読出コマンドを前記携帯可能電子装置に送信し、
前記コマンド処理部は、前記状態読出コマンドを前記受信部により受信する場合、前記第１の記憶部により記憶されている前記受信データと前記第２の記憶部により記憶されている前記送信データとを読み出し、読み出した前記受信データ及び前記送信データを含むレスポンスを生成し、
前記第１の受信部は、前記携帯可能電子装置から送信される前記受信データ及び前記送信データを含む前記レスポンスを受信する、
請求項４に記載の携帯可能電子装置の処理システム。
【請求項１７】
前記端末装置は、前記第１の受信部により受信した前記受信データ及び前記送信データを含む前記レスポンスを報知する報知部をさらに具備する請求項１６に記載の携帯可能電子装置の処理システム。
【請求項１８】
前記端末装置は、
前記第１の受信部により受信した前記受信データ及び前記送信データに基づいて、前記携帯可能電子装置の状態を判別する判別部と、
前記判別部による判別の結果を報知する報知部と、
をさらに具備する、
請求項１６に記載の携帯可能電子装置の処理システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、携帯可能電子装置、及び携帯可能電子装置の処理システムに関する。
【背景技術】
【０００２】
一般的に、携帯可能電子装置として用いられるＩＣカードは、プラスチックなどで形成されたカード状の本体と本体に埋め込まれたＩＣモジュールとを備えている。ＩＣモジュールは、ＩＣチップを有している。ＩＣチップは、電源が無い状態でもデータを保持することができるＥＥＰＲＯＭ（Ｅｌｅｃｔｒｉｃａｌｌｙ  Ｅｒａｓａｂｌｅ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｒｅａｄ−Ｏｎｌｙ  Ｍｅｍｏｒｙ）またはフラッシュＲＯＭなどの不揮発性メモリと、種々の演算を実行するＣＰＵとを有している。
【０００３】
ＩＣカードは、例えば、国際標準規格ＩＳＯ／ＩＥＣ７８１６に準拠したＩＣカードである。ＩＣカードは、携帯性に優れ、且つ、外部装置との通信及び複雑な演算処理を行う事ができる。また、偽造が難しい為、ＩＣカードは、機密性の高い情報などを格納してセキュリティシステム、電子商取引などに用いられることが想定される。
【０００４】
近年、ＩＣカードに搭載されるＩＣチップの高性能化に伴い、ＩＣチップに記憶されている複数のアプリケーションを実行することができるＩＣカードが実用化されている。このようなＩＣカードは、専用のリーダライタを有する端末装置からコマンドを受信し、受信したコマンドに基づいてアプリケーションを実行する。これにより、ＩＣカードは、種々の処理を実行することができる。ＩＣカードは、アプリケーションの処理結果に基づいてレスポンスを生成し、生成したレスポンスを端末装置に送信する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−２２３５１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
端末装置は、ＩＣカードから受け取るレスポンスに基づいて、ＩＣカードの状態を認識することができる。また、端末装置は、ＩＣカードにコマンドを送信してから、所定時間以内にレスポンスを受信できない場合、エラーが発生したと判断する。しかし、このような場合、端末装置は、ＩＣカードに対して発信したコマンドが、ＩＣカードに届いたのか否かを判断することができない。また、端末装置は、ＩＣカードからレスポンスが送信されたか否かを判断することができない。この為、従来のＩＣカードは、エラーの原因の特定が困難であるという課題がある。
【０００７】
そこで、エラーの原因を容易に特定することができる携帯可能電子装置、及び携帯可能電子装置の処理システムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
一実施形態に係る携帯可能電子装置は、外部機器から入力されるコマンドに応じて動作する携帯可能電子装置であって、前記外部機器から送信される前記コマンドを受信する受信部と、前記受信部により受信する前記コマンドを一時的に記憶する受信レジスタと、前記受信部により前記コマンドの受信が正常に完了したか否か判断し、前記コマンドの受信が正常に完了したと判断した場合、前記コマンドを受信データとして記憶する第１の記憶部と、前記受信レジスタにより記憶されている前記コマンドに基づいて処理を行いレスポンスを生成するコマンド処理部と、前記コマンド処理部により生成された前記外部機器に送信する前記レスポンスを一時的に記憶する送信レジスタと、前記送信レジスタにより記憶されている前記レスポンスを前記外部機器に送信する送信部と、前記送信部により前記レスポンスの送信が正常に完了したか否か判断し、前記レスポンスの送信が正常に完了したと判断した場合、前記レスポンスを送信データとして記憶する第２の記憶部と、を具備する。
【図面の簡単な説明】
【０００９】
【図１】図１は、一実施形態に係るＩＣカード処理システムの構成例について説明するための図である。
【図２】図２は、一実施形態に係るＩＣカードの構成例について説明するための図である。
【図３】図３は、一実施形態に係るＩＣカード処理システムによる処理の例について説明するための図である。
【図４】図４は、一実施形態に係るＩＣカードによる処理の例について説明するための図である。
【図５】図５は、一実施形態に係るＩＣカード処理システムによる処理の例について説明するための図である。
【図６】図６は、一実施形態に係るＩＣカード処理システムによる処理の例について説明するための図である。
【図７】図７は、一実施形態に係るＩＣカードによる処理の例について説明するための図である。
【図８】図８は、一実施形態に係るＩＣカード処理システムによる処理の例について説明するための図である。
【図９】図９は、一実施形態に係るＩＣカードによる処理の例について説明するための図である。
【図１０】図１０は、一実施形態に係るＩＣカードの他の構成例について説明するための図である。
【図１１】図１１は、一実施形態に係るＩＣカード処理システムによる処理の例について説明するための図である。
【図１２】図１２は、一実施形態に係るＩＣカードによる処理の例について説明するための図である。
【図１３】図１３は、一実施形態に係るＩＣカードによる処理の例について説明するための図である。
【発明を実施するための形態】
【００１０】
以下、図面を参照しながら、一実施形態に係る携帯可能電子装置、及び携帯可能電子装置の処理システムについて詳細に説明する。
【００１１】
本実施形態に係る端末装置１０のカードリーダライタ１７及びＩＣカード２０は、例えば、ＥＴＳＩ  ＴＳ  １０２  ６１３により規定されているＳｉｎｇｌｅ  Ｗｉｒｅ  Ｐｒｏｔｏｃｏｌ（ＳＷＰ）などの接触通信の機能、及びＩＳＯ／ＩＥＣ１４４４３などにより規定されている非接触通信の機能の両方またはいずれかの機能を備える。これにより、カードリーダライタ１７及びＩＣカード２０は、互いにデータの送受信を行うことができる。
【００１２】
図１は、一実施形態に係るＩＣカード処理システム１の構成例について示す。  
ＩＣカード処理システム１は、携帯可能電子装置（ＩＣカード）２０を処理する端末装置１０と、ＩＣカード２０と、を備える。端末装置１０とＩＣカード２０とは、上記したように接触通信、または非接触通信により互いに種々のデータを送受信する。なお、本実施形態では、端末装置１０及びＩＣカード２０は、互いに接触通信によりデータの送受信を行うとして説明する。
【００１３】
端末装置１０は、ＣＰＵ１１、ＲＡＭ１２、ＲＯＭ１３、操作部１５、表示部１６、及びカードリーダライタ１７を備える。ＣＰＵ１１、ＲＡＭ１２、ＲＯＭ１３、操作部１５、表示部１６、及びカードリーダライタ１７は、それぞれバス１９を介して互いに接続されている。
【００１４】
ＣＰＵ１１は、端末装置１０全体の制御を司る制御部として機能する。ＣＰＵ１１は、ＲＯＭ１３に記憶されている制御プログラム及び制御データに基づいて種々の処理を行う。例えば、ＣＰＵ１１は、カードリーダライタ１７を介してＩＣカード２０とコマンド及びレスポンスの送受信を行う。
【００１５】
ＲＡＭ１２は、ワーキングメモリとして機能する揮発性のメモリである。ＲＡＭ１２は、ＣＰＵ１１の処理中のデータなどを一時的に格納する。例えば、ＲＡＭ１２は、カードリーダライタ１７を介して外部の機器と送受信するデータを一時的に格納する。また、ＲＡＭ１２は、ＣＰＵ１１が実行するプログラムを一時的に格納する。ＲＯＭ１３は、予め制御用のプログラム及び制御データなどを記憶する不揮発性のメモリである。
【００１６】
操作部１５は、例えば操作キーなどを備える。操作部１５は、端末装置１０の操作者により入力される操作に基づいて、操作信号を生成する。操作部１５は、生成した操作信号をＣＰＵ１１に入力する。
【００１７】
表示部１６は、ＣＰＵ１１、またはＣＰＵ１１により制御されるグラフィック処理部から入力される表示信号に基づいて、種々の情報を表示する。なお、端末装置１０は、操作部１５と表示部１６とが一体に形成されるタッチパネルを備える構成であってもよい。
【００１８】
カードリーダライタ１７は、ＩＣカード２０と通信を行うためのインターフェース装置である。カードリーダライタ１７は、ＩＣカード２０が装着されるスロット１８を備える。また、カードリーダライタ１７は、ＩＣカード２０が備えるコンタクトパターンと接続される複数の接触端子を備える。
【００１９】
スロット１８にＩＣカード２０が装着される場合、カードリーダライタ１７の複数の接触端子は、ＩＣカード２０のコンタクトパターンに接続される。これにより、端末装置１０とＩＣカード２０とは電気的に接続される。カードリーダライタ１７は、スロット１８に装着されるＩＣカード２０に対して、電力の供給、クロックの供給、リセット信号の入力、及びデータの送受信などを行う。
【００２０】
ＣＰＵ１１は、カードリーダライタ１７によりＩＣカード２０に対して種々のコマンドを入力する。ＩＣカード２０は、例えば、カードリーダライタ１７からデータの書き込みコマンドを受信した場合、受信したデータを内部の不揮発性メモリに書き込む処理を行う。
【００２１】
また、ＣＰＵ１１は、ＩＣカード２０に読み取りコマンドを送信することにより、ＩＣカード２０からデータを読み出す。ＣＰＵ１１は、ＩＣカード２０から受信したデータに基づいて種々の処理を行う。
【００２２】
図２は、図１に示すＩＣカード２０の構成例を示す。  
図２に示すように、ＩＣカード２０は、カード状の本体と、本体内に内蔵されるＩＣモジュール２１を備えている。ＩＣモジュール２１は、ＩＣチップ２２を備える。
【００２３】
ＩＣチップ２２は、送受信インターフェース２３、ＣＰＵ２４、ＲＯＭ２５、ＲＡＭ２６、不揮発性メモリ２７、電源入力部２８、リセット信号入力部２９、クロック入力部３０を備える。
【００２４】
送受信インターフェース２３は、ＩＣカード２０に接続される外部機器（例えば端末装置１０）との間で送受信するデータに対して符号化、復号、変調、及び復調などを行う。
【００２５】
ＩＣカード２０が端末装置１０との間で接触通信によりデータの送受信を行う構成である場合、送受信インターフェース２３は、コンタクトパターンを備える。コンタクトパターンは、導電性を有する金属などによりＩＣモジュール２１の表面に形成される接触端子である。即ち、コンタクトパターンは、端末装置１０と接触可能に形成されている。コンタクトパターンは、金属により形成される面が複数のエリアに区切られて形成される。区切られた各エリアは、それぞれコンタクトパターンの端子として機能する。
【００２６】
また、送受信インターフェース２３は、受信レジスタ２３ａ、及び送信レジスタ２３ｂを備える。受信レジスタ２３ａ及び送信レジスタ２３ｂは、一般的なレジスタであり、ＩＣカード２０が送受信するデータを一時的に格納する。即ち、受信レジスタ２３ａは、送受信インターフェース２３を介して端末装置１０から受信するデータを一時的に格納する。また、送信レジスタ２３ｂは、送受信インターフェース２３を介して端末装置１０に送信するデータを一時的に格納する。
【００２７】
ＣＰＵ２４は、ＩＣカード２０の全体の制御を司る。また、ＣＰＵ２４は、ＣＰＵ２４は、ＲＯＭ２５あるいは不揮発性メモリ２７に記憶されている制御プログラム及び制御データに基づいて種々の処理を行う。例えば、ＣＰＵ２４は、端末装置１０のカードリーダライタ１７から受信したコマンドに応じて種々の処理を行い、処理結果に基づいて、レスポンスの生成を行なう。
【００２８】
ＲＯＭ２５は、予め制御用のプログラム及び制御データなどを記憶する不揮発性のメモリである。ＲＯＭ２５は、製造段階で制御プログラム及び制御データなどを記憶した状態でＩＣカード２０内に組み込まれる。即ち、ＲＯＭ２５に記憶される制御プログラム及び制御データは、予めＩＣカード２０の仕様に応じて組み込まれる。
【００２９】
ＲＡＭ２６は、ワーキングメモリとして機能する揮発性のメモリである。ＲＡＭ２６は、ＣＰＵ２４の処理中のデータなどを一時的に格納する。例えば、ＲＡＭ２６は、ＣＰＵ２４が実行するプログラムを一時的に格納する。
【００３０】
不揮発性メモリ２７は、例えば、ＥＥＰＲＯＭあるいはフラッシュＲＯＭなどのデータの書き込み及び書換えが可能な不揮発性のメモリにより構成される。不揮発性メモリ２７は、ＩＣカード２０の運用用途に応じて制御プログラム及び種々のデータを格納する。
【００３１】
たとえば、不揮発性メモリ２７では、プログラムファイル及びデータファイルなどが創成される。創成された各ファイルには、制御プログラム及び種々のデータなどが書き込まれる。ＣＰＵ２４は、不揮発性メモリ２７、または、ＲＯＭ２５に記憶されているプログラムを実行することにより、種々の処理を実現することができる。
【００３２】
また、不揮発性メモリ２７は、受信データ記憶領域２７ａ、及び送信データ記憶領域２７ｂを備える。受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂは、データを記憶する記憶領域である。
【００３３】
ＣＰＵ２４は、送受信インターフェース２３により端末装置１０からコマンドを受信する場合、端末装置１０から送られたコマンドの受信が正常に完了したか否かを判断する。端末装置１０から送られたコマンドの受信が正常に完了したと判断した場合、ＣＰＵ２４は、受信したコマンドを受信データとして受信データ記憶領域２７ａに記憶する。
【００３４】
具体的には、端末装置１０から送られたコマンドの受信が正常に完了したと判断した場合、ＣＰＵ２４は、受信レジスタ２３ａにより格納されているコマンドを受信データ記憶領域２７ａにコピーする。
【００３５】
また、ＣＰＵ２４は、送受信インターフェース２３により端末装置１０に対してレスポンスを送信する場合、レスポンスの送信が正常に完了したか否かを判断する。レスポンスの送信が正常に完了したと判断した場合、ＣＰＵ２４は送信したレスポンスを送信データとして送信データ記憶領域２７ｂに記憶する。
【００３６】
具体的には、レスポンスの送信が正常に完了したと判断した場合、ＣＰＵ２４は、送信レジスタ２３ｂにより格納されているレスポンスを送信データ記憶領域２７ｂにコピーする。
【００３７】
なお、ＣＰＵ２４は、受信データ記憶領域２７ａ又は送信データ記憶領域２７ｂにデータを記憶する場合、既に受信データ記憶領域２７ａ又は送信データ記憶領域２７ｂに記憶されているデータに上書きする。即ち、受信データ記憶領域２７ａは、最新のコマンドを記憶する。また、送信データ記憶領域２７ｂは、最新のレスポンスを記憶する。この結果、端末装置１０は、受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂにより記憶されているデータに基づいて、ＩＣカード２０がコマンドを受信したか否か、ＩＣカード２０においてコマンド処理が正常に行われたか否か、及びＩＣカード２０がレスポンスを送信したか否かを判断することができる。
【００３８】
電源入力部２８は、送受信インターフェース２３を介してカードリーダライタ１７から電力を受給し、受給した電力をＩＣカード２０の各部に供給する。
【００３９】
リセット信号入力部２９は、送受信インターフェース２３を介してカードリーダライタ１７からリセット信号を受け取り、受け取ったリセット信号をＣＰＵ２４に供給する。
【００４０】
クロック入力部３０は、送受信インターフェース２３を介してカードリーダライタ１７からクロック信号を受け取り、受け取ったクロック信号をＩＣカード２０の各部に供給する。
【００４１】
なお、端末装置１０のカードリーダライタ１７とＩＣカード２０とが非接触通信によりデータの通信を行う場合、カードリーダライタ１７は、アンテナなどを備える。カードリーダライタ１７は、ＩＣカード２０に送信するコマンドに応じてアンテナにより磁界を発生させる。
【００４２】
また、端末装置１０のカードリーダライタ１７とＩＣカード２０とが非接触通信によりデータの通信を行う場合、送受信インターフェース２３は、アンテナを備える。アンテナは、導電性を有する金属線がＩＣモジュール２１に所定のパターンに配設されて形成される。アンテナは、配設された金属線の形状により、所定の共振周波数を有する。これにより、アンテナは、アンテナに印加される磁界を検知することができる。
【００４３】
送受信インターフェース２３は、アンテナにより磁界を検知し、検知した磁界に応じてコマンドを生成する。即ち、送受信インターフェース２３は、アンテナによりカードリーダライタ１７から送信されたコマンドを取得する。ＩＣカード２０のＣＰＵ２４は、取得したコマンドに応じて処理を実行し、レスポンスを生成する。送受信インターフェース２３は、生成されたレスポンスに応じてアンテナにより磁界を発生させる。
【００４４】
カードリーダライタ１７は、アンテナにより磁界を検知し、検知した磁界に応じてレスポンスを取得する。
【００４５】
また、端末装置１０のカードリーダライタ１７とＩＣカード２０とが非接触通信によりデータの通信を行う場合、電源入力部２８は、カードリーダライタ１７送信される電波、特にキャリア波に基づいて電力を生成する。さらに、電源入力部２８は、動作クロックを生成する。電源入力部２８は、生成した電力及び動作クロックをＩＣカード２０の各部に供給する。
【００４６】
次に、ＩＣカード処理システム１による処理と、ＩＣカード２０の受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂにより記憶されるデータとの関係について説明する。
【００４７】
図３は、ＩＣカード処理システム１による処理の一例を示す。また、図４は、ＩＣカード２０の処理の一例を示す。  
まず、ＩＣカード２０が端末装置１０のカードリーダライタ１７のスロット１８に装着される場合、端末装置１０は、カードリーダライタを介してＩＣカード２０に電力を供給する。これにより、ＩＣカード２０は、動作可能な起動状態になる。
【００４８】
端末装置１０は、ＩＣカード２０に対して「コマンドデータＡ」を送信する（ステップＳ１１）。ＩＣカード２０の送受信インターフェース２３は、端末装置１０から送信された「コマンドデータＡ」を受信し、受信した「コマンドデータＡ」を受信レジスタ２３ａに記憶する。
【００４９】
ＩＣカード２０のＣＰＵ２４は、端末装置１０から送信された「コマンドデータＡ」の受信が正常に完了したか否かを判断する。端末装置１０から送信された「コマンドデータＡ」の受信が正常に完了したと判断した場合、ＣＰＵ２４は、受信した「コマンドデータＡ」を受信データ記憶領域２７ａに記憶する（ステップＳ１２）。
【００５０】
ＣＰＵ２４は、受信した「コマンドデータＡ」に基づいてコマンド処理を実行する。ＣＰＵ２４は、コマンド処理の処理結果に基づいて、「レスポンスデータＡ」を生成する。ＣＰＵ２４は、生成した「レスポンスデータＡ」を送信レジスタ２３ｂに記憶する。送受信インターフェース２３は、送信レジスタ２３ｂに記憶されている「レスポンスデータＡ」を端末装置１０に対して送信する（ステップＳ１３）。
【００５１】
ＣＰＵ２４は、「レスポンスデータＡ」の送信が正常に完了したか否かを判断する。「レスポンスデータＡ」の送信が正常に完了したと判断した場合、ＣＰＵ２４は、送信した「レスポンスデータＡ」を送信データ記憶領域２７ｂに記憶する（ステップＳ１４）。この結果、図４に示すように、不揮発性メモリ２７の状態は、受信データ記憶領域２７ａが「コマンドデータＡ」を記憶し、送信データ記憶領域２７ｂが「レスポンスデータＡ」を記憶する状態になる。
【００５２】
端末装置１０は、ＩＣカード２０から送信された「レスポンスデータＡ」を受け取る。端末装置１０は、「レスポンスデータＡ」に基づいて、ＩＣカード２０の状態を判断する。即ち、「レスポンスデータＡ」が正常終了を示すデータである場合、端末装置１０は、ＩＣカード２０により「コマンドデータＡ」に基づく処理が正常に行われたと判断する。
【００５３】
次に、端末装置１０は、ＩＣカード２０に対して「コマンドデータＢ」を送信する（ステップＳ１５）。
【００５４】
しかし、ここで、ＩＣカード２０が、端末装置１０から送信された「コマンドデータＢ」を正常に受信できなかったとする。この場合、ＩＣカード２０により「コマンドデータＢ」に基づくコマンド処理が実行されない。この結果、ＩＣカード２０により「コマンドデータＢ」に対する「レスポンスデータＢ」が生成されず、端末装置１０は、ＩＣカード２０からのレスポンスを受けとることができない。
【００５５】
端末装置１０は、例えば、コマンドをＩＣカード２０に送信してから予め設定される所定時間以内にレスポンスを受け取ることが出来ない場合、エラーが発生したと判断する。
【００５６】
図５は、ＩＣカード処理システム１による処理の一例を示す。  
エラーが発生したと判断する場合、端末装置１０は、受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂが記憶しているデータを読み出すためのコマンド（状態読出コマンド）をＩＣカード２０に送信する（ステップＳ２１）。
【００５７】
ＩＣカード２０は、端末装置１０から状態読出コマンドを受信する場合、受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂが記憶しているデータを読み出し、読み出したデータを含むレスポンス（状態読出コマンドに対するレスポンス）を生成する。ＩＣカード２０は、生成したレスポンスを端末装置１０に送信する（ステップＳ２２）。
【００５８】
端末装置１０は、ＩＣカード２０から受け取る状態読出コマンドに対するレスポンスに基づいて、ＩＣカード２０の状態を判別する。図４に示すように、受信データ記憶領域２７ａが「コマンドデータＡ」を記憶し、送信データ記憶領域２７ｂが「レスポンスデータＡ」を記憶している場合、端末装置１０は、ＩＣカード２０に対して送信した「コマンドデータＢ」がＩＣカード２０に届いていないと判別する。この場合、端末装置１０は、ＩＣカード２０において受信エラーが発生した、または、端末装置１０から送信されたデータが例えばノイズなどの影響により消失したと判断する。
【００５９】
即ち、端末装置１０は、最後にＩＣカード２０に送信したコマンドが受信データ記憶領域２７ａに記憶されていない場合、コマンドがＩＣカード２０に届いていないと判別することができる。
【００６０】
図６は、ＩＣカード処理システム１による処理の一例を示す。また、図７は、ＩＣカード２０の処理の一例を示す。なお、図６に示すステップＳ３１乃至Ｓ３５は、図３に示すステップＳ１１乃至ステップＳ１５と同様の処理である為、簡単に説明をする。  
まず、端末装置１０は、ＩＣカード２０に対して「コマンドデータＡ」を送信する（ステップＳ３１）。
【００６１】
端末装置１０から送信された「コマンドデータＡ」の受信が正常に完了したと判断した場合、ＣＰＵ２４は、受信した「コマンドデータＡ」を受信データ記憶領域２７ａに記憶する（ステップＳ３２）。
【００６２】
ＣＰＵ２４は、受信した「コマンドデータＡ」に基づいてコマンド処理を実行し、「レスポンスデータＡ」を生成する。送受信インターフェース２３は、「レスポンスデータＡ」を端末装置１０に対して送信する（ステップＳ３３）。
【００６３】
「レスポンスデータＡ」の送信が正常に完了したと判断した場合、ＣＰＵ２４は、送信した「レスポンスデータＡ」を送信データ記憶領域２７ｂに記憶する（ステップＳ３４）。
【００６４】
端末装置１０は、ＩＣカード２０から送信された「レスポンスデータＡ」を受け取る。次に、端末装置１０は、ＩＣカード２０に対して「コマンドデータＢ」を送信する（ステップＳ３５）。ＩＣカード２０の送受信インターフェース２３は、端末装置１０から送信された「コマンドデータＢ」を受信し、受信した「コマンドデータＢ」を受信レジスタ２３ａに記憶する。
【００６５】
ＩＣカード２０のＣＰＵ２４は、端末装置１０から送信された「コマンドデータＢ」の受信が正常に完了したか否かを判断する。端末装置１０から送信された「コマンドデータＢ」の受信が正常に完了したと判断した場合、ＣＰＵ２４は、受信した「コマンドデータＢ」を受信データ記憶領域２７ａに記憶する（ステップＳ３６）。
【００６６】
この場合、ＣＰＵ２４は、既に受信データ記憶領域２７ａに記憶されている「コマンドデータＡ」に「コマンドデータＢ」を上書きする。この結果、図７に示すように、不揮発性メモリ２７の状態は、受信データ記憶領域２７ａが「コマンドデータＢ」を記憶し、送信データ記憶領域２７ｂが「レスポンスデータＡ」を記憶する状態になる。
【００６７】
ここで、ＩＣカード２０が、「コマンドデータＢ」に基づくコマンド処理を正常に実行することができなかったとする。この場合、ＩＣカード２０により「コマンドデータＢ」に対する「レスポンスデータＢ」が生成されず、端末装置１０は、ＩＣカード２０からのレスポンスを受けとることができない。この場合も、端末装置１０は、エラーが発生したと判断する。
【００６８】
端末装置１０は、上述したように、状態読出コマンドをＩＣカード２０に送信し、ＩＣカード２０の受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂが記憶しているデータを読み出す。
【００６９】
端末装置１０は、受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂが記憶しているデータに基づいて、ＩＣカード２０の状態を判別する。図７に示すように、受信データ記憶領域２７ａが「コマンドデータＢ」を記憶し、送信データ記憶領域２７ｂが「レスポンスデータＡ」を記憶している場合、端末装置１０は、ＩＣカード２０により「コマンドデータＢ」に基づくコマンド処理が実行されなかった、または、ＩＣカード２０によるレスポンスの送信が正常に完了しなかったと判別する。
【００７０】
即ち、端末装置１０は、最後にＩＣカード２０に送信したコマンドが受信データ記憶領域２７ａに記憶されており、且つ、最後にＩＣカード２０に送信したコマンドに対するレスポンスが送信データ記憶領域２７ｂに記憶されていない場合、ＩＣカード２０により「コマンドデータＢ」に基づくコマンド処理が実行されていない、または、ＩＣカード２０によるレスポンスの送信が正常に完了しなかったと判別することができる。
【００７１】
図８は、ＩＣカード処理システム１による処理の一例を示す。また、図９は、ＩＣカード２０の処理の一例を示す。なお、図８に示すステップＳ４１乃至Ｓ４６は、図６に示すステップＳ３１乃至ステップＳ３６と同様の処理である為、簡単に説明をする。  
まず、端末装置１０は、ＩＣカード２０に対して「コマンドデータＡ」を送信する（ステップＳ４１）。
【００７２】
端末装置１０から送信された「コマンドデータＡ」の受信が正常に完了したと判断した場合、ＣＰＵ２４は、受信した「コマンドデータＡ」を受信データ記憶領域２７ａに記憶する（ステップＳ４２）。
【００７３】
ＣＰＵ２４は、受信した「コマンドデータＡ」に基づいてコマンド処理を実行し、「レスポンスデータＡ」を生成する。送受信インターフェース２３は、「レスポンスデータＡ」を端末装置１０に対して送信する（ステップＳ４３）。
【００７４】
「レスポンスデータＡ」の送信が正常に完了したと判断した場合、ＣＰＵ２４は、送信した「レスポンスデータＡ」を送信データ記憶領域２７ｂに記憶する（ステップＳ４４）。
【００７５】
端末装置１０は、ＩＣカード２０から送信された「レスポンスデータＡ」を受け取る。次に、端末装置１０は、ＩＣカード２０に対して「コマンドデータＢ」を送信する（ステップＳ４５）。
【００７６】
端末装置１０から送信された「コマンドデータＢ」の受信が正常に完了したと判断した場合、ＣＰＵ２４は、受信した「コマンドデータＢ」を受信データ記憶領域２７ａに記憶する（ステップＳ４６）。
【００７７】
ＣＰＵ２４は、受信した「コマンドデータＢ」に基づいてコマンド処理を実行する。ＣＰＵ２４は、コマンド処理の処理結果に基づいて、「レスポンスデータＢ」を生成する。ＣＰＵ２４は、生成した「レスポンスデータＢ」を送信レジスタ２３ｂに記憶する。送受信インターフェース２３は、送信レジスタ２３ｂに記憶されている「レスポンスデータＢ」を端末装置１０に対して送信する（ステップＳ４７）。
【００７８】
ＣＰＵ２４は、「レスポンスデータＢ」の送信が正常に完了したか否かを判断する。「レスポンスデータＢ」の送信が正常に完了したと判断した場合、ＣＰＵ２４は、送信した「レスポンスデータＢ」を送信データ記憶領域２７ｂに記憶する（ステップＳ４８）。この結果、図９に示すように、不揮発性メモリ２７の状態は、受信データ記憶領域２７ａが「コマンドデータＢ」を記憶し、送信データ記憶領域２７ｂが「レスポンスデータＢ」を記憶する状態になる。
【００７９】
しかし、ここで、端末装置１０が、ＩＣカード２０から送信された「レスポンスデータＢ」を正常に受信できなかったとする。この場合も、端末装置１０は、エラーが発生したと判断する。
【００８０】
端末装置１０は、上述したように、状態読出コマンドをＩＣカード２０に送信し、ＩＣカード２０の受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂが記憶しているデータを読み出す。
【００８１】
端末装置１０は、受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂが記憶しているデータに基づいて、ＩＣカード２０の状態を判別する。図９に示すように、受信データ記憶領域２７ａが「コマンドデータＢ」を記憶し、送信データ記憶領域２７ｂが「レスポンスデータＢ」を記憶している場合、端末装置１０は、ＩＣカード２０により「コマンドデータＢ」に基づくコマンド処理が実行され、且つ、「レスポンスデータＢ」がＩＣカード２０から正常に送信されたと判別する。この場合、端末装置１０は、端末装置１０において受信エラーが発生した、または、ＩＣカード２０から送信されたデータが例えばノイズなどの影響により消失したと判別する。
【００８２】
即ち、端末装置１０は、最後にＩＣカード２０に送信したコマンドが受信データ記憶領域２７ａに記憶されており、且つ、最後にＩＣカード２０に送信したコマンドに対するレスポンスが送信データ記憶領域２７ｂに記憶されている場合、ＩＣカード２０から送信されたレスポンスを端末装置１０が受け取る事ができなかったと判別することが出来る。
【００８３】
さらに、端末装置１０は、上記の判別の結果を表示部１６に表示することにより、端末装置１０の操作者に判別の結果を報知することができる。また、端末装置１０は、単にＩＣカード２０から読み出したデータを表示部１６に表示する構成であってもよい。例えば、端末装置１０は、ＩＣカード２０の受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂにより記憶されているデータを読出し、表示部１６に表示する構成であってもよい。
【００８４】
上記した実施形態に係るＩＣカード処理システム１は、受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂを備えるＩＣカード２０と端末装置１０とを備える。Ｉｃカード２０は、端末装置１０との間でデータの送受信が正常に行われたと判断する場合、送受信したデータを受信データ記憶領域２７ａまたは送信データ記憶領域２７ｂに記憶する。また、端末装置１０は、エラーが発生したと判断する場合、ＩＣカード２０に状態読出コマンドを送信することにより、ＩＣカード２０の受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂを読み出す。
【００８５】
これにより、端末装置１０のＣＰＵ１１は、受信データ記憶領域２７ａから読み出した受信データと、送信データ記憶領域２７ｂから読み出した送信データとに基づいて、ＩＣカード２０の状態を判別することができる。さらに、端末装置１０は、エラーの原因を特定するための情報を取得することができる。この為、ＩＣカード処理システム１は、一連の電文の途中で起こったエラーの原因の特定を容易にすることができる。この結果、エラーの原因を容易に特定することができる携帯可能電子装置、及び携帯可能電子装置の処理システムを提供することができる。
【００８６】
なお、上記した実施形態では、ＩＣカード２０は、不揮発性メモリ２７が受信データを記憶する記憶領域（受信データ記憶領域）及び送信データを記憶する記憶領域（送信データ記憶領域）を備える構成として説明したが、この構成に限定されない。例えば、ＩＣカード２０は、ＲＡＭ２６が受信データ記憶領域及び送信データ記憶領域を備える構成であってもよい。さらに、ＩＣカード２０は、ＲＡＭ２６と不揮発性メモリ２７との両方が受信データ記憶領域及び送信データ記憶領域を備える構成であってもよい。またさらに、ＩＣカード２０は、受信データ記憶領域及び送信データ記憶領域を備える記憶モジュールをさらに備える構成であってもよい。
【００８７】
また、ＩＣカード２０は、受信データ記憶領域及び送信データ記憶領域に受信データ及び送信データを記憶する場合の方法を示す設定情報を記憶するメモリ（セッティングメモリ）をさらに備える構成であってもよい。この場合、ＩＣカード２０は、セッティングメモリにより記憶されている設定情報に基づいて受信データ及び送信データを記憶する。
【００８８】
図１０は、ＩＣカード２０の他の構成例を示す。  
図１０は、ＲＡＭ２６と不揮発性メモリ２７との両方が受信データ記憶領域及び送信データ記憶領域を備えるＩＣカード２０の例を示す。なお、送受信インターフェース２３、ＣＰＵ２４、ＲＯＭ２５、電源入力部２８、リセット信号入力部２９、及びクロック入力部３０は、図２により示されるＩＣカード２０と同様の構成であるので、詳細な説明を省略する。
【００８９】
ＲＡＭ２６は、受信データ記憶領域２６ａ、及び送信データ記憶領域２６ｂを備える。また、不揮発性メモリ２７は、受信データ記憶領域２７ａ、及び送信データ記憶領域２７ｂを備える。なお、ＲＡＭ２６の受信データ記憶領域２６ａ及び送信データ記憶領域２６ｂは、不揮発性メモリ２７の受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂと同様の構成である。
【００９０】
しかし、受信データ記憶領域及び送信データ記憶領域がＲＡＭ２６に形成されている場合、ＩＣカード２０は、受信データ記憶領域及び送信データ記憶領域が不揮発性メモリ２７に形成されている場合に比べてより高速に受信データ及び送信データの保存を行うことができる。
【００９１】
また、受信データ記憶領域及び送信データ記憶領域が不揮発性メモリ２７に形成されている場合、ＩＣカード２０の電源が落ちても受信データ及び送信データが消失しない為、より確実にエラーの原因を特定することができる。この場合、例えば、端末装置１０は、受信データ及び送信データの記憶をＩＣカード２０に実行させる為の情報をＩＣカード２０に送信することにより、前回の終了時と同じ条件で受信データ及び送信データの記憶をＩＣカード２０に実行させることができる。
【００９２】
またさらに、受信データ記憶領域及び送信データ記憶領域がＲＡＭ２６と不揮発性メモリ２７との両方に形成されている場合、ＩＣカード２０は、高速、且つ、確実に受信データ及び送信データを受信データ記憶領域及び送信データ記憶領域に保存することができる。
【００９３】
また、不揮発性メモリ２７は、受信データ記憶領域及び送信データ記憶領域に受信データ及び送信データを記憶する場合の方法を示す設定情報を記憶するセッティングメモリ２７ｃをさらに備える。ＩＣカード２０は、セッティングメモリ２７ｃにより記憶されている設定情報に基づいて受信データ及び送信データを記憶する。
【００９４】
ＩＣカード２０は、端末装置１０から送信されるコマンド（設定コマンド）に基づいて設定情報を生成し、セッティングメモリ２７ｃに記憶する。
【００９５】
なお、ＩＣカード２０は、ＲＡＭ２６、または他の記憶モジュールがセッティングメモリを備える構成であってもよい。
【００９６】
またさらに、ＩＣカード２０は、不揮発性メモリ２７の受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂに受信データ及び送信データを記憶する場合の方法を示す設定情報（第１の設定情報）と、ＲＡＭ２６の受信データ記憶領域２６ａ及び送信データ記憶領域２６ｂに受信データ及び送信データを記憶する場合の方法を示す設定情報（第２の設定情報）と、を有する構成であってもよい。
【００９７】
この場合、例えば、ＩＣカード２０は、不揮発性メモリ２７が第１の設定情報と第２の設定情報とを記憶するセッティングメモリを備える構成であってもよい。この構成によると、ＩＣカード２０は、電源が落ちても受信データ記憶領域及び送信データ記憶領域の再設定を行う必要がなくなる。
【００９８】
また、例えば、ＩＣカード２０は、ＲＡＭ２６が第１の設定情報と第２の設定情報とを記憶するセッティングメモリを備える構成であってもよい。この構成によると、ＩＣカード２０は、より高速に受信データ記憶領域及び送信データ記憶領域の設定を行うことができる。
【００９９】
またさらに、ＩＣカード２０は、不揮発性メモリ２７が第１の設定情報を記憶するセッティングメモリを備え、ＲＡＭ２６が第１の設定情報を記憶するセッティングメモリを備える構成であってもよい。
【０１００】
なお、本例では、ＩＣカード２０は、不揮発性メモリ２７が受信データ記憶領域２７ａ、送信データ記憶領域２７ｂ、及びセッティングメモリ２７ｃを備え、ＲＡＭ２６が受信データ記憶領域２６ａ及び送信データ記憶領域２６ｂを備える構成として説明する。
【０１０１】
図１１は、端末装置１０から送信されるコマンドの例を示す。  
図１１により示されるように、端末装置１０がＩＣカード２０に送信するコマンドは、
「ＣＬＡ」、「ＩＮＳ」、「Ｐ１」、「Ｐ２」、「Ｌｃ」、「Ｄａｔａ」、及び「Ｌｅ」などのフィールドを有する。
【０１０２】
「ＣＬＡ」は、コマンドの層別を示すｃｌａｓｓ  ｂｙｔｅである。「ＩＮＳ」は、コマンドの種別を示すｉｎｓｔｒｕｃｔｉｏｎ  ｂｙｔｅである。「Ｐ１」及び「Ｐ２」は、「ＩＮＳ」に応じたパラメータを示すｐａｒａｍｅｔｅｒ  ｂｙｔｅである。
【０１０３】
「Ｌｃ」は、「Ｄａｔａ」のデータの長さ（バイト数）を示すｌｅｎｇｔｈ  ｆｉｅｌｄ  ｆｏｒ  ｃｏｒｄｉｎｇ  ｎｕｍｂｅｒ  Ｎｃである。「Ｄａｔａ」は、当該コマンドのデータ本体を示すｃｏｍｍａｎｄ  ｄａｔａ  ｆｉｅｌｄである。「Ｌｅ」は、当該コマンドに対するレスポンスのデータ長を示すｌｅｎｇｔｈ  ｆｉｅｌｄ  ｆｏｒ  ｃｏｒｄｉｎｇ  ｎｕｍｂｅｒ  Ｎｅである。
【０１０４】
即ち、「ＣＬＡ」及び「ＩＮＳ」により、当該コマンドの種類が示される。ＩＣカード２０は、受信したコマンドの「ＣＬＡ」及び「ＩＮＳ」の値を解析することにより、受信したコマンドの種類を認識する。
【０１０５】
端末装置１０は、ＩＣカード２０に上記の設定を行わせる為の設定コマンド、及びＩＣカード２０の受信データ記憶領域及び送信データ記憶領域が記憶しているデータを読み出すための状態読出コマンドを生成し、ＩＣカード２０に送信する。
【０１０６】
図１１により示されるコマンドが設定コマンドである場合、「ＣＬＡ」及び「ＩＮＳ」は、当該コマンドが設定コマンドであることを示すデータを有する。この場合、「Ｄａｔａ」は、保存先を示すデータ、記憶領域のサイズを示すデータ、記憶する受信データの数を示すデータ、記憶する送信データの数を示すデータ、記憶対象のフィールドを示すデータ、及び記憶するコマンドの種類を示すデータなどを有する。
【０１０７】
ＩＣカード２０は、端末装置１０から設定コマンドを受信した場合、図１２により示されるような設定情報を生成する。
【０１０８】
保存先を示すデータは、受信データ及び送信データを記憶する記憶領域を指定する為のデータである。例えば、保存先を示すデータは、ＲＡＭ２６を指定するデータ、不揮発性メモリ２７を指定するデータ、または受信データ及び送信データの記憶を行わないことを示すデータを有する。
【０１０９】
ＩＣカード２０は、保存先を示すデータがＲＡＭ２６を指定するデータである場合、ＲＡＭ２６の受信データ記憶領域２６ａ及び送信データ記憶領域２６ｂに受信データ及び送信データを記憶するように設定情報を生成する。また、ＩＣカード２０は、保存先を示すデータが不揮発性メモリ２７を指定するデータである場合、不揮発性メモリ２７の受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂに受信データ及び送信データを記憶するように設定情報の「保存先」の項目を生成する。
【０１１０】
なお、本例では、ＩＣカード２０は、「保存先」として不揮発性メモリ２７が設定されていると仮定して説明する。例えば、「保存先」としてＲＡＭ２６が設定されている場合であっても、ＩＣカード２０は、同様の処理で受信データ及び送信データを記憶することができる。
【０１１１】
このような構成によると、受信データ及び送信データを記憶するメモリをＲＡＭ２６と不揮発性メモリ２７とで指定することができる為、ＩＣカード２０は、場面に合わせてより適切な処理を行うことが出来る。
【０１１２】
記憶領域のサイズを示すデータは、受信データ及び送信データを記憶する記憶領域のサイズを指定する為のデータである。ＩＣカード２０は、記憶領域のサイズを示すデータにより指定されたサイズの記憶領域を受信データ及び送信データを記憶する為の記憶領域として不揮発性メモリ２７上で確保する。またＩＣカード２０は、記憶領域のサイズを示すデータに基づいて設定情報の「記憶領域のサイズ」の項目を生成する。
【０１１３】
記憶する受信データ及び送信データの数を示すデータは、保存先として指定された記憶領域に記憶する受信データ及び送信データの数を指定する為のデータである。ＩＣカード２０は、このデータに基づいて、記憶する受信データの数、及び記憶する送信データの数をそれぞれ設定し、設定情報の「記憶する受信データの数」及び「記憶する送信データの数」の項目を生成する。
【０１１４】
ＩＣカード２０は、「記憶する受信データの数」により示される数の受信データが記憶されている場合、最も古い受信データに新しい受信データを上書きする。また、ＩＣカード２０は、「記憶する送信データの数」により示される数の送信データが記憶されている場合、最も古い送信データに新しい送信データを上書きする。
【０１１５】
なお、ＩＣカード２０は、「記憶領域のサイズ」と、「記憶する送受信データの数」及び「記憶する送信データの数」とのいずれかの項目のみを設定する構成であってもよい。例えば、「記憶領域のサイズ」のみが設定された場合、ＩＣカード２０は、受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂの使用容量を逐次認識する。ＩＣカード２０は、受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂの使用容量が「記憶領域のサイズ」により示される容量を超える場合、既に記憶されている受信データまたは送信データに新しいデータを上書きする。
【０１１６】
このような構成によると、複数の受信データ及び送信データを記憶することができる為、ＩＣカード２０は、より詳細なエラーの原因の特定の為のデータを端末装置１０に送信することが出来る。
【０１１７】
図１３は、「記憶する受信データの数」が３、「記憶する送信データの数」が３で設定されている場合の受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂの例を示す。図１３により示されるように受信データ記憶領域２７ａに３つの受信データ（コマンドデータ）が記憶されている。また、送信データ記憶領域２７ｂに３つの送信データ（レスポンスデータ）が記憶されている。
【０１１８】
例えば、この状態で、新たに受信データ（コマンドデータＤ）を受信データ記憶領域２７ａに記憶する場合、ＩＣカード２０は、最も古いコマンドデータＡにコマンドデータＤを上書きする。
【０１１９】
記憶対象のフィールドを示すデータは、上記の受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂに記憶するデータの種類を示すデータである。ＩＣカード２０は、記憶対象のフィールドを示すデータに基づいて、設定情報の「記憶対象」の項目を生成する。
【０１２０】
上記したように、端末装置１０からＩＣカード２０に送信されるコマンドは、「ＣＬＡ」、「ＩＮＳ」、「Ｐ１」、「Ｐ２」、「Ｌｃ」、「Ｄａｔａ」、及び「Ｌｅ」などのフィールドを有する。
【０１２１】
また、ＩＣカード２０から端末装置１０に送信されるレスポンスは、「Ｄａｔａ」、「ＳＷ１」、及び「ＳＷ２」などのフィールドを有する。「Ｄａｔａ」は、レスポンスとして送信するデータの本体である。「ＳＷ１」、及び「ＳＷ２」は、ＩＣカード２０における処理結果を示すデータが格納されるフィールドである。
【０１２２】
ＩＣカード２０は、端末装置１０から受信したコマンドの「ＣＬＡ」、「ＩＮＳ」、「Ｐ１」、「Ｐ２」、「Ｌｃ」、「Ｄａｔａ」、及び「Ｌｅ」などのフィールドのうち、「記憶対象」により示されるフィールドのデータを受信データとして受信データ記憶領域２７ａに記憶する。
【０１２３】
また、ＩＣカード２０は、端末装置１０に送信するレスポンスの「Ｄａｔａ」、「ＳＷ１」、及び「ＳＷ２」などのフィールドのうち、「記憶対象」により示されるフィールドのデータを送信データとして送信データ記憶領域２７ｂに記憶する。
【０１２４】
このような構成によると、受信データ及び送信データとして記憶するデータの容量を抑えることができる為、ＩＣカード２０は、より効率的にメモリを活用することが出来る。
【０１２５】
記憶するコマンドの種類を示すデータは、受信データ及び送信データを記憶するコマンドの種類を指定する為のデータである。ＩＣカード２０は、記憶するコマンドの種類を示すデータに基づいて、設定情報の「コマンド種別」の項目を生成する。
【０１２６】
ＩＣカード２０は、「コマンド種別」により指定された特定のコマンドを受信した場合に受信データ及び送信データの記憶を行う。「コマンド種別」は、例えば、コマンドの「ＣＬＡ」及び「ＩＮＳ」の値に相当する。即ち、ＩＣカード２０は、端末装置１０からコマンドを受信した場合、受信したコマンドの「ＣＬＡ」及び「ＩＮＳ」の値を認識し、認識した値と「コマンド種別」の値とが一致した場合、受信データ及び送信データを受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂにそれぞれ記憶する。
【０１２７】
このような構成によると、受信データ及び送信データを記憶するコマンドを指定することができる為、ＩＣカード２０は、より効率的にメモリを活用することが出来る。
【０１２８】
なお、設定コマンドは、保存先を示すデータ、記憶領域のサイズを示すデータ、記憶する受信データの数を示すデータ、記憶する送信データの数を示すデータ、記憶対象のフィールドを示すデータ、及び記憶するコマンドの種類を示すデータの全てを備える構成であってもよいし、上記のうちの任意のものを備える構成であってもよい。
【０１２９】
例えば、ＩＣカード２０は、デフォルトの設定情報を不揮発性メモリ２７またはＲＯＭ２５に備える。ＩＣカード２０は、設定コマンドで指定されなかった項目についてデフォルトの設定情報を参照することにより、セッティングメモリ２７に記憶する設定情報を生成することができる。
【０１３０】
また、設定コマンドは、保存先を示すデータ、記憶領域のサイズを示すデータ、記憶する受信データの数を示すデータ、記憶する送信データの数を示すデータ、記憶対象のフィールドを示すデータ、及び記憶するコマンドの種類を示すデータを「Ｄａｔａ」が有する構成として説明したが、この構成に限定されない。設定コマンドは、これらのデータのうちのいくつかを「Ｐ１」、及び／または「Ｐ２」が有する構成であってもよい。
【０１３１】
また、ＩＣカード２０は、所定のコマンド（初期化コマンド）を端末装置１０から受信した場合に設定情報を初期化する構成であってもよい。なお、ＩＣカード２０は、上記の設定コマンドを受信した場合に設定情報を初期化してから各種の設定情報を再設定する構成であってもよいし、起動時に設定情報を初期化する構成であってもよい。
【０１３２】
また、図１１により示されるコマンドが上記した状態読出しコマンドである場合、「ＣＬＡ」及び「ＩＮＳ」は、当該コマンドが状態読出しコマンドであることを示すデータを有する。この場合、「Ｄａｔａ」は、読み出しの方法を指定する為の情報を有する。
【０１３３】
例えば、「Ｄａｔａ」は、受信データ及び送信データを一括して読み出すことをＩＣカード２０に指示するデータ、受信データのみを読み出すことをＩＣカード２０に指示するデータ、送信データのみを読み出すことをＩＣカード２０に指示するデータ、受信データ及び送信データを１つずつ読み出すことをＩＣカード２０に指示するデータ、及び受信データ及び送信データを指定数ずつ読み出すことをＩＣカード２０に指示するデータ、のうちのいずれかを有する。
【０１３４】
「Ｄａｔａ」が受信データ及び送信データを一括して読み出すことをＩＣカード２０に指示するデータを有する場合、ＩＣカード２０は、受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂに記憶されている全ての受信データ及び送信データを読み出し、読み出したデータを含むレスポンスを生成する。ＩＣカード２０は、生成したレスポンスを端末装置１０に送信する。
【０１３５】
また、「Ｄａｔａ」が受信データのみを読み出すことをＩＣカード２０に指示するデータを有する場合、ＩＣカード２０は、受信データ記憶領域２７ａに記憶されている全ての受信データを読み出し、読み出したデータを含むレスポンスを生成する。ＩＣカード２０は、生成したレスポンスを端末装置１０に送信する。
【０１３６】
また、「Ｄａｔａ」が送信データのみを読み出すことをＩＣカード２０に指示するデータを有する場合、ＩＣカード２０は、送信データ記憶領域２７ｂに記憶されている全ての送信データを読み出し、読み出したデータを含むレスポンスを生成する。ＩＣカード２０は、生成したレスポンスを端末装置１０に送信する。
【０１３７】
また、受信データ及び送信データを１つずつ読み出すことをＩＣカード２０に指示するデータを有する場合、ＩＣカード２０は、受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂに記憶されている受信データ及び送信データを１つずつ読み出し、読み出したデータを含むレスポンスを生成する。ＩＣカード２０は、生成したレスポンスを端末装置１０に送信する。
【０１３８】
また、受信データ及び送信データを指定数ずつ読み出すことをＩＣカード２０に指示するデータを有する場合、ＩＣカード２０は、受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂに記憶されている受信データ及び送信データを指定された数ずつ読み出し、読み出したデータを含むレスポンスを生成する。ＩＣカード２０は、生成したレスポンスを端末装置１０に送信する。なお、この場合、「Ｄａｔａ」は、読み出す受信データの数（指定数）と読み出す送信データの数（指定数）とをそれぞれ有する。
【０１３９】
上記したように、ＩＣカード２０は、端末装置１０により指定された方法で受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂから受信データ及び送信データを読み出し、レスポンスを生成する。この為、ＩＣカード２０は、不要な処理を行うことなく、必要なデータを受信データ記憶領域２７ａ及び送信データ記憶領域２７ｂから読み出し、端末装置１０に送信することができる。この結果、ＩＣカード２０は、より効率よく処理を行うことができる。
【０１４０】
上記した実施形態では、状態読出しコマンドの「Ｄａｔａ」が受信データ及び送信データを一括して読み出すことをＩＣカード２０に指示するデータ、受信データのみを読み出すことをＩＣカード２０に指示するデータ、送信データのみを読み出すことをＩＣカード２０に指示するデータ、受信データ及び送信データを１つずつ読み出すことをＩＣカード２０に指示するデータ、及び受信データ及び送信データを指定数ずつ読み出すことをＩＣカード２０に指示するデータ、のうちのいずれかを有する構成として説明したが、この構成に限定されない。
【０１４１】
状態読出しコマンドの「Ｐ１」及び「Ｐ２」の値により受信データ及び送信データを一括して読み出すことをＩＣカード２０に指示するデータ、受信データのみを読み出すことをＩＣカード２０に指示するデータ、送信データのみを読み出すことをＩＣカード２０に指示するデータ、受信データ及び送信データを１つずつ読み出すことをＩＣカード２０に指示するデータ、及び受信データ及び送信データを指定数ずつ読み出すことをＩＣカード２０に指示するデータを示す構成であってもよい。また、それぞれ個別に異なるコマンドが設定されてもよい。
【０１４２】
なお、上述の各実施の形態で説明した機能は、ハードウエアを用いて構成するに留まらず、ソフトウエアを用いて各機能を記載したプログラムをコンピュータに読み込ませて実現することもできる。また、各機能は、適宜ソフトウエア、ハードウエアのいずれかを選択して構成するものであっても良い。
【０１４３】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
【符号の説明】
【０１４４】
１…ＩＣカード処理システム、１０…端末装置、１１…ＣＰＵ、１２…ＲＡＭ、１３…ＲＯＭ、１５…操作部、１６…表示部、１７…カードリーダライタ、１８…スロット、１９…バス、２０…ＩＣカード、２１…ＩＣモジュール、２２…ＩＣチップ、２３…送受信インターフェース、２３ａ…受信レジスタ、２３ｂ…送信レジスタ、２４…ＣＰＵ、２５…ＲＯＭ、２６…ＲＡＭ、２６ａ…受信データ記憶領域、２６ｂ…送信データ記憶領域、２７…不揮発性メモリ、２７ａ…受信データ記憶領域、２７ｂ…送信データ記憶領域、２７ｃ…セッティングメモリ、２８…電源入力部、２９…リセット信号入力部、３０…クロック入力部。
【図１】
2012208910.tif 000003
【図２】
2012208910.tif 000004
【図３】
2012208910.tif 000005
【図４】
2012208910.tif 000006
【図５】
2012208910.tif 000007
【図６】
2012208910.tif 000008
【図７】
2012208910.tif 000009
【図８】
2012208910.tif 000010
【図９】
2012208910.tif 000011
【図１０】
2012208910.tif 000012
【図１１】
2012208910.tif 000013
【図１２】
2012208910.tif 000014
【図１３】
2012208910.tif 000015