(57)【要約】【課題】通信状況に応じて利用できるインターフェイスを自動的に選択可能なＩＣカード等を提供する。【解決手段】本発明は、接続装置との間で通信可能なＩＣチップにおいて、前記ＩＣチップが設定可能な通信プロトコルを示すプロトコルデータを含む初期応答データを予め記憶する記憶手段と、前記接続装置との間の通信状況を検知する通信状況検知手段と、前記接続装置から送信されたリセット信号を受信するリセット信号受信手段と、前記リセット信号が受信された場合に、前記記憶手段に記憶された前記プロトコルデータを、前記検知された通信状況に応じた通信プロトコルを示すプロトコルデータに変更するプロトコルデータ変更手段と、前記変更されたプロトコルデータを含む初期応答データを前記接続装置に返信する初期応答データ返信手段と、を備える。【選択図】図３
2011060002.tif 000002
【特許請求の範囲】
【請求項１】
接続装置との間で通信可能なＩＣチップにおいて、
前記ＩＣチップが設定可能な通信プロトコルを示すプロトコルデータを含む初期応答データを予め記憶する記憶手段と、
前記接続装置との間の通信状況を検知する通信状況検知手段と、
前記接続装置から送信されたリセット信号を受信するリセット信号受信手段と、
前記リセット信号が受信された場合に、前記記憶手段に記憶された前記プロトコルデータを、前記検知された通信状況に応じた通信プロトコルを示すプロトコルデータに変更するプロトコルデータ変更手段と、
前記変更されたプロトコルデータを含む初期応答データを前記接続装置に返信する初期応答データ返信手段と、
を備えることを特徴とするＩＣチップ。
【請求項２】
請求項１に記載のＩＣチップにおいて、
前記通信状況検知手段は、前記受信されたリセット信号の種別を検知し、
前記プロトコルデータ変更手段は、前記記憶手段に記憶された前記プロトコルデータを、前記検知された前記リセット信号の種別に応じた通信プロトコルを示すプロトコルデータに変更することを特徴とするＩＣチップ。
【請求項３】
請求項１又は２に記載のＩＣチップにおいて、
前記通信状況検知手段は、前記接続装置からの供給電圧を検知し、
前記プロトコルデータ変更手段は、前記記憶手段に記憶された前記プロトコルデータを、前記検知された前記供給電圧に応じた通信プロトコルを示すプロトコルデータに変更することを特徴とするＩＣチップ。
【請求項４】
請求項１乃至３の何れか一項に記載のＩＣチップにおいて、
前記リセット信号は、コールドリセットとウォームリセットの何れか一方であることを特徴とするＩＣチップ。
【請求項５】
請求項１乃至４の何れか一項に記載のＩＣチップを搭載することを特徴とするＩＣカード。
【請求項６】
接続装置との間で通信可能なＩＣチップにおける初期応答データ送信方法であって、
前記ＩＣチップが設定可能な通信プロトコルを示すプロトコルデータを含む初期応答データを予め記憶する工程と、
前記接続装置との間の通信状況を検知する工程と、
前記接続装置から送信されたリセット信号を受信する工程と、
前記リセット信号が受信された場合に、前記記憶手段に記憶された前記プロトコルデータを、前記検知された通信状況に応じた通信プロトコルを示すプロトコルデータに変更する工程と、
前記変更されたプロトコルデータを含む初期応答データを前記接続装置に返信する工程と、
を備えることを特徴とする初期応答データ送信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
ＩＣカードのインターフェイスを選択する方法等の技術分野に関する。
【背景技術】
【０００２】
近年、金融、通信、交通等の様々な分野でＩＣカードの普及が進んでいる。外部端子付きの接触型ＩＣカードでは、論理回路であるＩＣチップを内蔵し、このＩＣチップがインターフェイスを通じて外部の接続装置に接続される。また、このＩＣカードは、国際標準規格であるＩＳＯ／ＩＥＣ７８１６−３にて規定される通信プロトコル（例えば、Ｔ＝０,Ｔ＝１）に準拠しており、この通信プロトコルにしたがって接続装置との間でデータ伝送を行うことができる。さらに、近年、ＩＳＯ／ＩＥＣ７８１６−３に規定される上記通信プロトコルに加え、高速データ伝送できるＵＳＢ（Universal Serial Bus）の通信プロトコルをサポート可能（利用可能な）接触型ＩＣカードが知られるようになってきた。このようなＩＣカードは、ＩＳＯ／ＩＥＣ７８１６−３に規定されるインターフェイスに加えて、ＵＳＢのインターフェイスを有している。
【０００３】
そして、このようなＩＣカードにおいて、複数の通信プロトコルのうち、１つの通信プロトコルを選択する方法として、特許文献１に開示されるように、ＰＰＳ（Protocol and Parameter Selection）で選択する方法が知られている。この方法では、接続装置は、当該接続装置からのリセット信号に応じてＩＣカードから送信された初期応答データとしてのＡＴＲ（Answer To Reset）を受信すると、当該ＡＴＲに示される複数の通信プロトコルのうちから選択した１つの通信プロトコルを示すＰＰＳリクエストをＩＣカードに送信するようになっている。そして、ＰＰＳリクエストを受信したＩＣカードは、当該ＰＰＳリクエストに示される通信プロトコルに基づきインターフェイスを選択しＰＰＳレスポンスを返信するようになっている。なお、ＡＴＲとしての初期応答データは、ＩＣカードの不揮発性メモリに予め記憶されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−１１００８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述したＩＣカードにおいて、通信状況によっては、利用できるインターフェイスが制限される。例えば、ＩＳＯ／ＩＥＣ７８１６−３に規定されるコールドリセット（Cold Reset）後のＰＰＳでＵＳＢのインターフェイスを選択することは可能だが、同規格で規定されるウォームリセット（Warm Reset）後のＰＰＳではＵＳＢのインターフェイスを選択できない。つまり、ＩＣカード側でＵＳＢのインターフェイスの設定値を設定できない。もし、ＩＣカードの不揮発性メモリに記憶された初期応答データにＵＳＢの通信プロトコルを示すデータが含まれていた場合に、ＰＰＳでＵＳＢのインターフェイスが選択されてもＩＣカードは応答できない（ＰＰＳレスポンスを返信できない）という場合が生じ、その結果、ＩＣカードと接続装置と間で通信できなくなるという問題が生じる。
【０００６】
そこで、本発明は、このような問題等に鑑みてなされたものであり、通信状況に応じて利用できるインターフェイスを自動的に選択可能なＩＣカード等を提供することを課題の一つとする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、請求項１に記載の発明は、接続装置との間で通信可能なＩＣチップにおいて、前記ＩＣチップが設定可能な通信プロトコルを示すプロトコルデータを含む初期応答データを予め記憶する記憶手段と、前記接続装置との間の通信状況を検知する通信状況検知手段と、前記接続装置から送信されたリセット信号を受信するリセット信号受信手段と、前記リセット信号が受信された場合に、前記記憶手段に記憶された前記プロトコルデータを、前記検知された通信状況に応じた通信プロトコルを示すプロトコルデータに変更するプロトコルデータ変更手段と、前記変更されたプロトコルデータを含む初期応答データを前記接続装置に返信する初期応答データ返信手段と、を備えることを特徴とする。
【０００８】
請求項２に記載の発明は、請求項１に記載のＩＣチップにおいて、前記通信状況検知手段は、前記受信されたリセット信号の種別を検知し、前記プロトコルデータ変更手段は、前記記憶手段に記憶された前記プロトコルデータを、前記検知された前記リセット信号の種別に応じた通信プロトコルを示すプロトコルデータに変更することを特徴とする。
【０００９】
請求項３に記載の発明は、請求項１又は２に記載のＩＣチップにおいて、前記通信状況検知手段は、前記接続装置からの供給電圧を検知し、前記プロトコルデータ変更手段は、前記記憶手段に記憶された前記プロトコルデータを、前記検知された前記供給電圧に応じた通信プロトコルを示すプロトコルデータに変更することを特徴とする。
【００１０】
請求項４に記載の発明は、請求項１乃至３の何れか一項に記載のＩＣチップにおいて、前記リセット信号は、コールドリセットとウォームリセットの何れか一方であることを特徴とする。
【００１１】
請求項５に記載の発明は、請求項１乃至４の何れか一項に記載のＩＣチップを搭載することを特徴とする。
【００１２】
請求項６に記載の発明は、接続装置との間で通信可能なＩＣチップにおける初期応答データ送信方法であって、前記ＩＣチップが設定可能な通信プロトコルを示すプロトコルデータを含む初期応答データを予め記憶する工程と、前記接続装置との間の通信状況を検知する工程と、前記接続装置から送信されたリセット信号を受信する工程と、前記リセット信号が受信された場合に、前記記憶手段に記憶された前記プロトコルデータを、前記検知された通信状況に応じた通信プロトコルを示すプロトコルデータに変更する工程と、前記変更されたプロトコルデータを含む初期応答データを前記接続装置に返信する工程と、を備えることを特徴とする。
【発明の効果】
【００１３】
本発明によれば、ＩＣチップが接続装置からリセット信号を受信した場合に、記憶手段に予め記憶された初期応答データに含まれるプロトコルデータを、通信状況に応じた通信プロトコルを示すプロトコルデータに変更して、これを接続装置に返信するように構成したので、通信状況に応じて利用できるインターフェイスを自動的に選択することが可能となり、リセット信号受信後に、ＩＣチップが接続装置に応答できないという事態を回避することができる。
【図面の簡単な説明】
【００１４】
【図１】ＩＣカードに搭載されるＩＣチップの概要構成例を示すブロック図である。
【図２】接続装置２からＩＣチップ１へリセット信号が送信される際の動作例を示すシーケンス図である。
【図３】リセット信号が受信されたときのＩＣチップ１におけるＣＰＵ１５の処理を示すフローチャートである。
【図４】（Ａ）は、予めＥＥＰＲＯＭ１４に記憶されている初期ＡＴＲの一例を示し、（Ｂ）は、通信状況に応じて生成された最適ＡＴＲの一例を示す図である。
【発明を実施するための形態】
【００１５】
以下、図面を参照して本発明の実施形態について詳細に説明する。以下に説明する実施形態は、接続装置との間で通信可能なＩＣカードに対して本発明を適用した場合の実施の形態である。なお、接続装置とは、ＩＣカード（又はセキュリティ機能付メモリカード）に搭載されるＩＣチップが動作時に電気的に接続されている端末機（例えば、ＩＣカードリーダライタを備えるコンピュータ）、通信装置（例えば、携帯電話機）又は機器をいう。
【００１６】
先ず、本実施形態に係るＩＣチップの構成及び機能概要について、図１を用いて説明する。
【００１７】
図１は、ＩＣカードに搭載されるＩＣチップの概要構成例を示すブロック図である。図１に示すように、ＩＣチップ１は、インターフェイス１１、ＲＯＭ（Read Only Memory）１２、ＲＡＭ（Random Access Memory）１３、ＥＥＰＲＯＭ１４（或いは、フラッシュメモリでもよい）、及びＣＰＵ（Central Processing Unit）１５等を備えて構成されている。
【００１８】
インターフェイス１１は、接続装置２との間でデータや各種信号の入出力を行うための入出力回路であり、例えば、ＩＳＯ／ＩＥＣ７８１６−３に規定されるインターフェイス（以下、「ＩＳＯのインターフェイス」という）、及びＵＳＢのインターフェイスを有している。なお、インターフェイス１１は、ＩＳＯやＵＳＢのインターフェイスの他にも、ＳＷＰ（Single Wired Protocol）のインターフェイス等を有していてもよい。
【００１９】
また、インターフェイス１１は、ＩＣチップ１の外面側に複数（例えば、８つ）設けられた接続端子（図示せず）に接続されている。上記接続端子としては、接続装置２間でデータの入出力を行うための端子（例えばＣ７端子）、接続装置２から電圧が供給される端子（Ｃ１端子）、接続装置２からリセット信号が入力される端子（Ｃ２端子）、接続装置２からクロック信号が入力される端子（Ｃ４端子）、及び接地用端子（Ｃ５端子）等がある。
【００２０】
ＲＯＭ１２は、データ伝送処理機能、コマンド処理機能、ファイル生成・管理機能、及びセキュリティ機能等の各実行モジュール（プログラム）をコード化して記憶する。
【００２１】
ＲＡＭ１３は、ＣＰＵ１５の演算処理における作業領域として用いられる。
【００２２】
ＥＥＰＲＯＭ１４は、本発明の記憶手段の一例であり、ＡＴＲとしての初期応答データ、ＩＳＯのインターフェイスの設定値、及びＵＳＢのインターフェイスの設定値等が予め記憶されている。ＡＴＲとしての初期応答データは、開始キャラクタ（ＴＳ）、構成表示キャラクタ（Ｔ０）、接続情報キャラクタ、及び検査キャラクタ（ＴＣＫ）等で構成される。
【００２３】
ここで、構成表示キャラクタ（Ｔ０）は、接続情報キャラクタの有無を示すデータである。
【００２４】
接続情報キャラクタは、ＩＣチップ１が設定可能な通信プロトコル（伝送プロトコル）を示すプロトコルデータを含んでおり、ＴＡ（ｉ），ＴＢ（ｉ），ＴＣ（ｉ），ＴＤ（ｉ）という記号で表される（ｉは１〜４の何れか）。これらの記号により、パラメータ（Ｔ）、クロックレート変換因子（Ｆ）、ビットレート調整因子（Ｄ）、ＩＣチップ１の最大情報フィールド長（ＩＦＳＣ）、ブロック待ち時間整数値（ＢＷＩ）、キャラクタ待ち時間整数値（ＣＷＩ）、及び供給電圧範囲（サポート電圧範囲）等が示される。
【００２５】
検査キャラクタ（ＴＣＫ）は、初期応答データに誤り検査を行うためのデータであり、Ｔ０からＴＣＫまでの全てのバイトの排他的論理和が“００”になるように設定されている。
【００２６】
なお、ＡＴＲについてはＩＳＯ／ＩＥＣ７８１６−３で規定されているので、これ以上の詳しい説明は省略する。
【００２７】
ＣＰＵ１５は、ＲＯＭ１２に記憶されたプログラム（初期応答データ送信プログラムを含む）を読み出して実行することにより、本発明における通信状況検知手段、リセット信号受信手段、プロトコルデータ変更手段、及び初期応答データ返信手段等として機能するようになっている。
【００２８】
具体的には、通信状況検知手段としてのＣＰＵ１５は、接続装置２との間の通信状況を検知する。例えば、ＣＰＵ１５は、通信状況として、接続装置２からの供給電圧を検知する。また、ＣＰＵ１５は、リセット信号受信手段として接続装置２からリセット信号を受信した場合に、通信状況として、リセット信号の種別を検知する。ここで、リセット信号の種別としては、コールドリセットとウォームリセットがある。コールドリセットとは、ＩＣチップ１が活性化された直後に実行されるリセットである。一方、ウォームリセットとは、コールドリセット以外の全てのリセット、つまり、電圧ＶＣＣ及びクロックが安定状態にあるときに実行されるリセットである。
【００２９】
プロトコルデータ変更手段としてのＣＰＵ１５は、接続装置２からリセット信号が受信された場合に、ＥＥＰＲＯＭ１４に記憶されたＡＴＲ（以下、「初期ＡＴＲ」という）に含まれる通信プロトコルを示すプロトコルデータを、上記検知された通信状況に応じた通信プロトコルを示すプロトコルデータに変更する（つまり、初期ＡＴＲを再構築し、最適ＡＴＲを生成する）。例えば、ＣＰＵ１５は、ＥＥＰＲＯＭ１４に記憶されたプロトコルデータを、上記検知されたリセット信号の種別に応じた通信プロトコルを示すプロトコルデータに変更したり、上記検知された供給電圧に応じた通信プロトコルを示すプロトコルデータに変更する。
【００３０】
そして、初期応答データ返信手段としてのＣＰＵ１５は、変更されたプロトコルデータを含む初期応答データを接続装置２に返信する。
【００３１】
次に、ＩＣチップ１の動作について、図２乃至図４を用いて説明する。
【００３２】
図２は、接続装置２からＩＣチップ１へリセット信号が送信される際の動作例を示すシーケンス図である。図３は、リセット信号が受信されたときのＩＣチップ１におけるＣＰＵ１５のリセット信号受信処理を示すフローチャートである。図４（Ａ）は、予めＥＥＰＲＯＭ１４に記憶されている初期ＡＴＲの一例を示し、図４（Ｂ）は、通信状況に応じて生成された最適ＡＴＲの一例を示す図である。なお、実際には、図４（Ａ），（Ｂ）に示されるキャラクタ（Character、１６進数で表現）がバイナリーでＥＥＰＲＯＭ１４に記憶されている。また、図４（Ａ），（Ｂ）において、Ｔ＝０は調歩式半二重キャラクタ通信プロトコルを示し、Ｔ＝１は調歩式半二重ブロック通信プロトコルを示す。
【００３３】
図２に示すように、ＩＣチップ１のＣＰＵ１５は、接続装置２から送信されたリセット信号を受信すると（ステップＳ１）、図３に示すリセット信号受信処理を開始する。図３において、ＣＰＵ１５は、先ず、ＥＥＰＲＯＭ１４に記憶された初期ＡＴＲを取得（ＲＡＭ１３の所定領域に記憶）する（ステップＳ１１）。
【００３４】
次いで、ＣＰＵ１５は、取得した初期ＡＴＲにＵＳＢの通信プロトコルを示すプロトコルデータが含まれているか否かを判別する（ステップＳ１２）。そして、ＣＰＵ１５は、ＵＳＢの通信プロトコルを示すプロトコルデータが含まれていないと判別した場合には（ステップＳ１２：ＮＯ）、上記取得した初期ＡＴＲをそのまま接続装置２へ送信する（ステップＳ１５）。一方、ＣＰＵ１５は、ＵＳＢの通信プロトコルを示すプロトコルデータが含まれていると判別した場合には（ステップＳ１２：ＹＥＳ）、上記受信したリセット信号の種別を判別する（ステップＳ１３）。つまり、この処理で、通信状況として、リセット信号の種別が検知される。さらに、ＣＰＵ１５は、ＥＥＰＲＯＭ１４に記憶されているＵＳＢのインターフェイスの設定値を参照する。例えば、ＵＳＢのインターフェイスの設定値は、「５Ｖ→非対応、３Ｖ→対応、１．８Ｖ→対応、コールドリセット→対応、ウォームリセット→非対応」であるとする。
【００３５】
そして、上記受信されたリセット信号の種別がコールドリセットである場合（ステップＳ１３：ＣＯＬＤ）、ＣＰＵ１５は、上記取得した初期ＡＴＲをそのまま接続装置２へ送信する（ステップＳ１５）。
【００３６】
一方、上記受信されたリセット信号の種別がウォームリセットである場合（ステップＳ１３：ＷＡＲＭ）、ＵＳＢのインターフェイスの設定値ではウォームリセットが非対応となっているので、ＣＰＵ１５は、上記取得した初期ＡＴＲを基に最適ＡＴＲを生成する（ステップＳ１４）。
【００３７】
つまり、ウォームリセット後に通信不可となるので、ＣＰＵ１５により、ＥＥＰＲＯＭ１４に記憶されている初期ＡＴＲは不適切であると判断され、初期ＡＴＲからＵＳＢの通信プロトコルを示すプロトコルデータを削除した最適ＡＴＲが生成される。この場合、例えば、図４（Ａ），（Ｂ）に示すように、初期ＡＴＲにおけるＴＤ３からＵＳＢのサポートを示すＴＢ４を除くため、キャラクタ“２Ｆ”からキャラクタ“１Ｆ”に書き換えられる（ＴＤ３の更新）とともに、キャラクタ“Ｃ０”が削除される（ＴＢ４の削除）。これにより、ＴＣＫについても、Ｔ０からＴＣＫまでの全てのバイトの排他的論理和が“００”になるように、キャラクタ“ＡＥ”からキャラクタ“５Ｅ”に書き換えられる（ＴＣＫの更新）。
【００３８】
こうして、初期ＡＴＲに含まれるプロトコルデータが、上記検知されたリセット信号の種別に応じた通信プロトコルを示すプロトコルデータに変更され、最適ＡＴＲが生成されることになる。
【００３９】
そして、ＣＰＵ１５は、生成された最適ＡＴＲを接続装置２へ送信する（ステップＳ１５、図２のステップＳ２）。
【００４０】
こうして、接続装置２は、図２に示すように、ＩＣチップ１から送信された最適ＡＴＲを受信すると、当該最適ＡＴＲを解析し、当該最適ＡＴＲに示される通信プロトコルのうちから選択した１つの通信プロトコルを示すＰＰＳリクエストをＩＣチップ１に送信する（ステップＳ３）。
【００４１】
そして、ＩＣチップ１のＣＰＵ１５は、接続装置２から送信されたＰＰＳリクエストを受信すると、当該ＰＰＳリクエストに示される通信プロトコルに基づきインターフェイスを選択（ＰＰＳ反映）しＰＰＳレスポンスを返信する（ステップＳ４）。
【００４２】
以上説明したように、上記実施形態によれば、ＩＣチップ１が接続装置２からリセット信号を受信した場合に、ＥＥＰＲＯＭ１４に記憶された初期ＡＴＲに含まれるプロトコルデータを、通信状況に応じた通信プロトコルを示すプロトコルデータに変更して最適ＡＴＲを生成し、これを接続装置２に返信するように構成したので、通信状況に応じて利用できるインターフェイスを自動的に選択することが可能となり、リセット信号受信後に、ＩＣチップ１が接続装置２に応答できないという事態を回避することができる。
【００４３】
なお、図３に示す処理例では、ＩＣチップ１は、通信状況としてリセット信号の種別を検知し、初期ＡＴＲに含まれるプロトコルデータを、当該リセット信号の種別に応じた通信プロトコルを示すプロトコルデータに変更するように構成したが、その他の例として、通信状況としてリセット信号の種別及びＩＣチップ１への供給電圧を検知し、当該リセット信号の種別及び当該供給電圧に応じた通信プロトコルを示すプロトコルデータに変更するように構成してもよい。この場合、例えば、受信されたリセット信号の種別がコールドリセットであり且つ供給電圧が５Ｖである場合、リセット信号の種別がウォームリセットである場合と同様、図４（Ａ），（Ｂ）に示すように、初期ＡＴＲにおけるＴＤ３からＵＳＢのサポートを示すＴＢ４を除くため、ＴＤ３及びＴＣＫの更新並びにＴＢ４の削除が行われる。
【００４４】
また、例えば、初期ＡＴＲに含まれるプロトコルデータを、上記接続端子のうちデータ入出力用の端子（例えば、ＳＷＰで使用されるＣ６端子）のＨ／Ｌの状況に応じた通信プロトコルを示すプロトコルデータに変更するように構成してもよい。
【符号の説明】
【００４５】
１  ＩＣチップ
２  接続装置
１１  インターフェイス
１２  ＲＯＭ
１３  ＲＡＭ
１４  ＥＥＰＲＯＭ
１５  ＣＰＵ
【図１】
2011060002.tif 000003
【図２】
2011060002.tif 000004
【図３】
2011060002.tif 000005
【図４】
2011060002.tif 000006