(57)【特許請求の範囲】
【請求項１】
外部端末との通信を行うための複数の情報伝達手段と、情報伝達手段を介して受信するコマンドを解釈して処理を実行し、処理結果を外部端末へ返すＯＳ部を有するＣＰＵと、情報伝達手段を通して受信されるコマンドが、どの情報伝達手段を通して受信されたかを検知してＣＰＵのＯＳ部に通知する識別手段と、ＣＰＵが演算する際の作業領域を提供する揮発性メモリ領域、データが格納される不揮発性メモリ領域を有する情報記憶手段とを備えた可搬情報処理装置において、
前記ＣＰＵのＯＳ部は、起動後デフォルトに設定されているアプリケーションを選択し、コマンドを受信すると、受信したコマンドの内容を解析してアプリケーション選択コマンドか否か判別してアプリケーション選択コマンドであれば当該コマンドで指定されたアプリケーションを選択し、アプリケーション選択コマンドでなければ選択済みアプリケーションを選択し、次いで、情報伝達手段と実行されるアプリケーションに応じて処理速度が設定されているアプリケーション管理テーブルを参照し、前記識別手段から通知された情報伝達手段と選択されたアプリケーションに対応して処理速度を設定して選択されたアプリケーションにコマンドを渡して制御を移し、
前記選択されたアプリケーションは渡された前記コマンドを解析して処理を実行し、処理結果をＯＳ部へ返すことを特徴とする複数の情報伝達手段を備えた可搬情報処理装置。
【請求項２】
外部端末との通信を行うための複数の接触式／非接触式情報伝達手段と、情報伝達手段を介して受信するコマンドを解釈して処理を実行し、処理結果を外部端末へ返すＯＳ部を有するＣＰＵと、接触式／非接触式の情報伝達手段を通して受信されるコマンドが、接触式／非接触式のうちどの情報伝達手段、及びどのような通信条件により受信されたかを検知してＣＰＵのＯＳ部に通知する識別手段と、ＣＰＵが演算する際の作業領域を提供する揮発性メモリ領域、データが格納される不揮発性メモリ領域を有する情報記憶手段とを備えた可搬情報処理装置において、
前記ＣＰＵのＯＳ部は、起動後デフォルトに設定されているアプリケーションを選択し、コマンドを受信すると、受信したコマンドの内容を解析してアプリケーション選択コマンドか否か判別してアプリケーション選択コマンドであれば当該コマンドで指定されたアプリケーションを選択し、アプリケーション選択コマンドでなければ選択済みアプリケーションを選択し、次いで、情報伝達手段及び通信条件とアプリケーションに応じて処理速度が設定されているアプリケーション管理テーブルを参照し、前記識別手段から通知された情報伝達手段及び通信条件と選択されたアプリケーションに対応して処理速度を設定して選択されたアプリケーションにコマンドを渡して制御を移し、
前記選択されたアプリケーションは渡された前記コマンドを解析して処理を実行し、処理結果をＯＳ部へ返すことを特徴とする複数の情報伝達手段を備えた可搬情報処理装置。
【請求項３】
前記複数の情報伝達手段は、接触式と非接触式の情報伝達手段であることを特徴とする請求項１記載の可搬情報処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は複数の情報伝達手段に対応したＩＣカード等の可搬情報処理装置に関する。
【０００２】
【従来の技術】
ＩＣカードでは外部端末（リーダ／ライタ）から物理的な伝送路（接触式情報伝達手段）または非接触な伝送路（非接触式情報伝達手段）を介して、シリアル伝送によってコマンドを受信し、カード内部で処理を実行し、処理結果をレスポンスとして同じ伝送路により外部端末へ送信している。
【０００３】
現在、複数の情報伝達手段（接触式／非接触式）を備えたＩＣカードが存在する。接触／非接触の２つの物理的なインタフェースの一方、あるいは両方を備えたものや、Ｔ＝０（接触式で命令を１文字づつ順番に送る）、Ｔ＝１（接触式で命令をブロック単位で送る）（ＩＳＯ７８１６．３で規定）、Ｔ＝ＣＬ（非接触式）（ＩＳＯ１４４４３・４で規定）等、複数の論理的な通信プロトコルのいずれか１つあるいは複数の組み合わせに対応したものがあり、一般にＩＤカードやクレジットカードとして利用されている。接触／非接触の両方のインタフェースを備えたカードでは利便性を考慮し、入退室管理、改札通過等の場合に非接触インタフェースを利用し、金融決済用途などでは接触式インタフェースを利用する場合が多い。
【０００４】
また、ＩＣカードのＣＰＵ（中央演算処理装置）は、通常、端子から入力された外部クロックによって動作する。近年、ＣＰＵの高性能により、処理速度が向上し、外部クロックの倍数指定（２、４、８倍等）で高速で実行させることができるようになった。なお、以下では倍数の指定を倍速設定と呼ぶ。
さらに、ＥＥＰＲＯＭ（不揮発性メモリ）等の容量の増加によって、ＩＣカードに複数のアプリケーションが搭載可能となった（例、Ｊａｖａ  Ｃａｒｄ）。
【０００５】
【発明が解決しようとする課題】
複数の情報伝達手段を持ち、かつ複数のアプリケーションを搭載できる従来のＩＣカードでは、それぞれの情報伝達手段と用途に対応して処理速度を設定することができなかった。例えば、ある入退出管理用アプリケーションが非接触式インタフェースで利用されるときは、通信距離をかせぐため省電力になる低処理速度で動作するように設定したい。しかし、別のある金融アプリケーションでは暗号処理を利用するため、どの伝達手段の場合でもとにかく処理速度を向上させる設定にしたい。
【０００６】
このような異なる要求を持つアプリケーションを一つのＩＣカードに搭載する場合、伝達手段に応じて、さらにどのアプリケーションが実行されるかによって処理速度を設定（倍速設定）できないことが問題である。
【０００７】
複数の情報伝達手段を判別し、実行可能なコマンドを切り替えるもの（特開平１１ー２７２８２４号）があるが、コマンド単位のセキュリティに関するものであり、複数のアプリケーションの選択を効率的に行うことはできない。
また、接触、非接触のインタフェースの違いによりクロック周波数を切り替えるもの（特開平１１ー３４３４４１号）があるが、カード全体の処理速度に関するものであり、用途に応じてアプリケーション単位で処理速度を切り替えることはできない。
【０００８】
【課題を解決するための手段】
本発明は上記課題を解決しようとするものであり、複数の情報伝達手段を持ち、処理速度の指定が可能で、複数アプリケーションを搭載可能な可搬情報処理装置において、それぞれの情報伝達手段を判別し、さらにアプリケーションに応じて倍速設定を自動的に選択する仕組みを提供しようとするものである。
【０００９】
図１は本発明が適用される可搬情報処理装置の構成例を示す図である。
ＩＣカード等の可搬情報処理装置１は、ここでは情報伝達手段２〜５を有している。情報伝達手段２、３は非接触式で電波を介して情報を伝達する手段で、例えば相互に電波の変調方式が異なっている。情報伝達手段４、５は接触式で情報伝達を実現する手段であり、互いに外部端末であるリーダ／ライタとの通信プロトコルが相違し、例えば、情報伝達手段４はＴ＝０、情報伝達手段５はＴ＝１である。識別手段６はどの情報伝達手段が選択されているかを識別するものであり、その識別結果はＣＰＵ７のＯＳ実行部に渡される。ＣＰＵ７は情報伝達手段を介して送信されるリーダ／ライタからのコマンドを解釈して実行（例えば、リード／ライト）し、リーダ／ライタへの応答を行う演算装置である。情報記憶手段８はＣＰＵが演算を行う際の作業領域を提供する揮発性メモリ領域と、制御情報、ソフトウエア等のデータが格納される不揮発性メモリ領域とからなっている。
【００１０】
本願発明では、ＯＳが管理する不揮発性メモリ領域に格納されるアプリケーション管理テーブルに、アプリケーションＩＤ（ＡＩＤ：少なくともカード内部でユニークな番号）と、それぞれのＡＩＤに対して情報伝達手段による倍速設定の項目を持つようにし、伝達手段の情報（インタフェースや通信プロトコルなど）を識別手段で判別し、コマンドが伝達されたアプリケーションに応じて処理速度が設定（倍速設定）されるようにしたものであり、用途と環境に応じて実行速度、通信距離（非接触の場合）、消費電力量などを適切に配分することができる。なお、本願発明は、情報伝達手段の数は特に限定されるものではなく、接触式／非接触式それぞれ１つ以上、或いは接触式／非接触式の一方は複数、他方は１つ、接触式或いは非接触式のみでそれぞれ複数の場合等、どのような場合にも適用可能である。
【００１１】
次に、アプリケーションの管理方法について説明する。
本願発明では、ＣＰＵ７のＯＳ部またはアプリケーション管理部に、例えば、図２に示すようなアプリケーション管理テーブルを備えている。この管理テーブルは、ＡＩＤ（アプリケーションＩＤで、少なくともカード内部でユニークな番号）と、それぞれのＡＩＤに対して情報伝達手段による倍速設定の項目を持っている。なお、アプリケーション管理テーブルの数値は専用のコマンドで書き換え可能であってもよい。
【００１２】
図２の例では、接触式インタフェースでＡＩＤが１のアプリケーション（金融）にコマンドが伝達されてきた場合は８倍速で動作し、非接触式インタフェースでＡＩＤが２のアプリケーション（入退室）にコマンドが伝達されてきた場合は２倍速で動作する。また、ＡＩＤが０は特殊なケースとし、ＩＣカードのＯＳ自身を示すものとする。これはコマンドを受信してからアプリケーションに引き渡すまでのＯＳとしての動作を何倍速で実行するかを指定するためである。また、伝達手段の列をさらに増やし、排他的でない伝達手段の組み合わせを用いるようにしてもよい。この場合、接触式インタフェースと非接触式インタフェースが同時に使われることはないが、接触式でかつ通信プロトコルがＴ＝１或いはＴ＝０というような場合はあり得る。
【００１３】
図３は接触／非接触式と通信プロトコルとの組み合わせで倍速設定する場合の管理テーブルを示している。Ｔ＝０は海外や携帯電話機などでよく使われ、日本国内ではＴ＝１がよく使われる。したがって、Ｔ＝０ならば携帯電話である可能性が高いと判断し、省電力にするため動作速度を落とすといった設定が考えられる。
【００１４】
アプリケーション管理テーブルに登録する「伝達手段」は、ＯＳが外部端末（リーダ／ライタ）からのコマンドの内容を解析しなくても分かるものでなければならない。従って、図１に示すように、本願発明では伝達手段の判別回路あるいは判別ソフトウェアとそれをＯＳ（ＣＰＵ）に通知する識別手段６を備えている。例えば、インタフェースの種類はハードウェアによって検出され、通信プロトコルの違いはＯＳの下層にある通信モジュールが判別してＯＳに通知する。
【００１５】
図４はＯＳ部での処理フローを示す図である。
可搬情報処理装置、例えばＩＣカードに接触または非接触の手段で電源が供給されると、ＩＣカードのＯＳ部が起動し（ステップＳ１）、通信条件を選択後、ＯＳ関連の初期化（メモリチェック等）を実行する（ステップＳ２）。次いで、ＯＳはここまでに分かっている伝達手段の情報（インタフェースや通信プロトコル等）を判別し（ステップＳ３）、アプリケーション管理テーブルを参照してＯＳ自身の処理速度を設定し（倍速設定）（ステップＳ４）、外部端末からのコマンド受信待ちとなる（ステップＳ５）。外部端末がコマンドを任意の通信プロトコルでＩＣカードに送信し、ＩＣカードのＯＳがコマンドを受信すると（コマンドの内容はまだ解析しない）、ＯＳはデフォルトに設定されているアプリケーションを選択する（ステップＳ６）。なお、アプリケーションの選択処理はＯＳ以外の専用アプリケーションに任せられるようにしてもよい。次いで、ＯＳは受信したコマンドの内容を解析し（ステップＳ７）、当該コマンドがアプリケーション選択コマンドか否かを判別し（ステップＳ８）、アプリケーション選択コマンドであればコマンドで指定されたアプリケーションの選択処理を行い（ステップＳ９）、アプリケーション管理テーブルを参照し、選択済アプリケーションの処理速度を設定し（ステップＳ１０）、選択済アプリケーションにコマンドを渡し、制御を移す（ステップＳ１１）。ステップＳ８において、選択コマンドでなければ選択済みのアプリケーション（この時点では上記選択されたデフォルトアプリケーション）にコマンドを渡し、制御をアプリケーションに移すが、その際、アプリケーション管理テーブルを参照して、伝達手段とＡＩＤからそのアプリケーションの倍速設定を行ってから制御を移す。次いで、アプリケーション管理テーブルを参照し、ＯＳ自身の処理速度に設定し直し（ステップＳ１２）、アプリケーションからの処理結果を外部端末に送信し（ステップＳ１３）、次のコマンドの受信待ちに入り（ステップＳ１４）、以後、ステップＳ７〜Ｓ１３の処理を繰り返す。なお、ステップＳ１２において、前回と同じアプリケーションの場合には、処理の高速化のため倍速値をキャッシュしておくようにしてもよい。
【００１６】
【発明の実施の形態】
以下、本発明の実施の形態を説明する。
ここでは接触／非接触のインタフェースの違いにより、各アプリケーションがそれぞれの処理速度（倍速設定）を設定可能な可搬情報処理装置としてＩＣカードを例にとって説明するが、ＩＣカードに限定されるものではない。
この例でのＩＣカードは以下の機能を持っているものとする。
通信インタフェースとして、接触式インタフェースと非接触式インタフェースを持ち、どちらのインタフェースにより情報が伝送されてきたかにより、それに対応して駆動する通信モジュール部を備え、ＯＳはどちらのインタフェースにより情報が伝達されてきたかを知る機能を持っているものとする。
【００１７】
ＯＳ部またはアプリケーション管理部に図５に示すアプリケーション管理テーブルを持つものとする。このアプリケーション管理テーブルはＡＩＤ（アプリケーションＩＤ、少なくともカード内でユニークな番号）と、それぞれのＡＩＤに対して伝達手段による倍速指定の項目を持つ。アプリケーション管理テーブルの値は専用のコマンドで書き換え可能であってもよい。
【００１８】
図５の例では、ＩＣカードにＡＩＤ＝１，２の２つのアプリケーションが搭載されており、また、デフォルトアプリケーションはＡＩＤ＝１の金融アプリケーションに設定されているものとする。この例では接触式インタフェースでＡＩＤが１のアプリケーションにコマンドが伝達されてきた場合は８倍速で動作を、非接触式インタフェースでＡＩＤが２のアプリケーションにコマンドが伝達されてきた場合には２倍速で動作する。なお、ＡＩＤが０は特殊なケースとし、ＩＣカードのＯＳ自身を示すものとする。これはコマンドを受信してからアプリケーションに引き渡すまでのＯＳとしての動作を何倍速で実行するかを指定するためである。
【００１９】
以下にＩＣカードの活性化からデフォルトアプリケーションがコマンドを処理するまでの流れを説明する。なお、処理フローは図４に示したものと同様であるので図示は省略する。
ＩＣカードに接触／非接触のいずれかのインタフェースを通して電源が供給されると、ＩＣカードのＯＳが起動し、通信条件の選択処理をしてＯＳ関連の初期化（メモリチェック等を含む）を実行する。外部端末は上記で使用したインタフェースを一連の処理手続きの間使用し続けるものとする。通信条件選択処理は、接触式であればＡＴＲ送信（通信するための諸情報の送信）、ＰＰＳ処理等（ＩＳＯ７８１６ー３で規定された通信プロトコルの決定等）、非接触式であればアンチコリージョン等（ＩＳＯ１４４４３ー３で規定）の処理である。外部端末はＩＣカードにコマンドを送信し、ＩＣカードのＯＳはコマンドを受信すると、ＯＳ上のアプリケーションを実行するための初期化を実行する。初期化の中でＯＳはデフォルトのアプリケーションの選択処理を行う。ここで接触式か非接触式かでデフォルトアプリケーションを異なる設定にしてもよい。
【００２０】
ＯＳ部は受信したコマンドがアプリケーション選択コマンドでないか否か判別し、アプリケーション選択コマンドであればコマンドで指定されたアプリケーションの選択処理を行う。アプリケーション選択コマンドでなければ、アプリケーション管理テーブルをみて選択されたアプリケーションと伝達手段（接触式か非接触式か）から、倍速設定値を得て、その値に処理速度を設定する。次いで、選択されたアプリケーションにコマンドを渡し、制御を移す。アプリケーションからの処理結果を外部端末に送信し、次のコマンドの受信待ちに入る。倍速設定はＯＳ自身の設定値に戻し、上記処理繰り返す。
【００２１】
次に、接触式インタフェースを利用し、金融アプリケーション向けのデータ読み取りコマンドを受信した場合の例について説明する。
ＩＣカードに接触式インタフェースを通して電源が供給される。ＩＣカードのＯＳが起動し、ＯＳ関連の初期化（メモリチェック等）を実行した後、ＡＴＲ（ＩＣカードと通信するための諸情報）を外部端末へ送信する。ＯＳの初期化には自身の処理速度（倍速設定）の設定も含まれる（アプリケーション管理テーブルでＡＩＤ＝０、接触式は４倍速なので、４倍速に設定する）。外部端末はデータ読み取りコマンドをＩＣカードに送信する。ＩＣカードのＯＳはコマンドを受信すると、ＯＳ上のアプリケーションを実行するための初期化を実行し、初期化の中でデフォルトアプリケーションである金融用アプリケーション（ＡＩＤ＝１）を選択する。
【００２２】
ＯＳ部は受信したコマンドがアプリケーション選択コマンドでないか判別し、選択コマンドでないことを確認する。この場合選択済のアプリケーション（ＡＩＤ＝１）にコマンドを渡すので、アプリケーション管理テーブルを参照し、ＡＩＤが１で、伝達手段が接触式であることから倍速設定を８倍にし、制御をアプリケーションに移し、コマンドをアプリケーションに渡す。
【００２３】
制御を渡されたアプリケーションはコマンドを解析し、データ読み取りコマンドであるので、該当するデータを処理結果としてＯＳに返し、ＯＳは自身の処理速度を４倍速に設定し直す。ＯＳはその値を外部端末に送信し、次のコマンドの受信待ちに入る。
【００２４】
次に非接触式インタフェースを利用し、アプリケーション選択コマンド（ＡＩＤ＝２を指定）を受信した場合の例について説明する。
ＩＣカードに非接触式インタフェースを通して電源が供給される。ＩＣカードのＯＳが起動し、ＯＳ関連の初期化（メモリチェック等を含む）を実行した後、ＡＴＲ（ＩＣカードと通信するための諸情報）を外部端末へ送信する。ＯＳの初期化には自身の処理速度（倍速設定）の設定も含まれる（アプリケーション管理テーブルでＡＩＤ＝０、接触式は４倍速なので、４倍速に設定する）。
【００２５】
外部端末は入退室用アプリケーションの選択コマンド（ＡＩＤ＝２を指定）をＩＣカードに送信する。ＩＣカードのＯＳはコマンドを受信する。ＯＳ上のアプリケーションを実行するための初期化を実行し、初期化の中でデフォルトアプリケーションである金融用アプリケーション（ＡＩＤ＝１）を選択する。
【００２６】
ＯＳ部は受信したコマンドがアプリケーション選択コマンドでないか判別し、アプリケーション選択コマンドなので指定されたアプリケーション（ＡＩＤ＝２）の選択処理を行う。この場合新たに選択されたアプリケーション（ＡＩＤ＝２）にコマンドを渡すことになる。アプリケーション管理テーブルを参照し、ＡＩＤが２で、伝達手段が非接触式であることから倍速設定を２倍にする。次いで、制御をアプリケーションに移し、コマンドをアプリケーションに渡す。
【００２７】
入退室用アプリケーション（ＡＩＤ＝２）はコマンドを解析し、単なる選択コマンドであるので何もせずＯＳに制御を戻す。ＯＳは自身の処理速度を４倍速に設定し直す。そして、選択コマンドが成功した旨を外部端末に送信し、次のコマンドの受信待ちに入る。
【００２８】
【発明の効果】
以上のように本発明によれば、伝達手段や通信条件に応じ、さらにどのアプリケーションが実行されるかによって、処理速度を設定（倍速設定）でき、用途と環境に応じて、実行速度、通信距離（非接触の場合）、消費電力量などを適切に配分することができる。
【図面の簡単な説明】
【図１】  本発明の可搬情報処理装置の構成例を示す図である。
【図２】  アプリケーション管理テーブルの例を示す図である。
【図３】  接触／非接触式と通信プロトコルとの組み合わせで倍速設定する場合の管理テーブルの例を示す図である。
【図４】  ＯＳにおける処理フローを示す図である。
【図５】  アプリケーション管理テーブルの例を示す図である。
【符号の説明】
１…可搬情報処理装置、２〜５…情報伝達手段、６…識別手段、７…ＣＰＵ、８…情報記憶手段。
【図１】
0004148502.tif 000002
【図２】
0004148502.tif 000003
【図３】
0004148502.tif 000004
【図４】
0004148502.tif 000005
【図５】
0004148502.tif 000006