(57)【要約】【課題】  ホストの供給可能な電流容量よりも多くの電流が流れ、ホストが破壊されることを防ぐ、多機能ＩＣカード及び多機能ＩＣカードの電流制御方法を提供する。【解決手段】  本発明の多機能ＩＣカードは、ホスト装置から電源電流を供給され、複数の機能モジュールと、各前記機能モジュールの電源電流値の情報と上限電源電流値とを記憶する制御部と、前記ホスト装置との間で、前記ホスト装置をマスターとし、ＩＣカードをスレーブとするマスター／スレーブ方式の通信を行う入出力部と、を有し、前記制御部は、前記ホスト装置から送信された動作命令を前記入出力部を通じて入力した時、前記電源電流値の情報と各前記機能モジュールの動作状況とに基づき、前記動作命令を実行するとＩＣカードの総電源電流が前記上限電源電流値を越えるか否かを判断し、超えない場合は前記動作命令を実行し、越える場合は少なくとも前記動作命令をそのまま実行しない。【選択図】図１
2005099926.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置から電源電流を供給され、
複数の機能モジュールと、
各前記機能モジュールの電源電流値の情報と上限電源電流値とを記憶する制御部と、
前記ホスト装置との間で、前記ホスト装置をマスターとし、ＩＣカードをスレーブとするマスター／スレーブ方式の通信を行う入出力部と、
を有し、
前記制御部は、前記ホスト装置から送信された動作命令を前記入出力部を通じて入力した時、前記電源電流値の情報と各前記機能モジュールの動作状況とに基づき、前記動作命令を実行するとＩＣカードの総電源電流が前記上限電源電流値を越えるか否かを判断し、超えない場合は前記動作命令を実行し、越える場合は少なくとも前記動作命令をそのまま実行しないことを特徴とするＩＣカード。
【請求項２】
第１の機能モジュールと第２の機能モジュールとを含む複数の機能モジュールを有し、
前記制御部は、前記第１の機能モジュールが動作している状態において前記ホスト装置から前記第２の機能モジュールの動作命令を入力した時、前記電源電流値の情報と各前記機能モジュールの動作状況とに基づき、前記動作命令を実行するとＩＣカードの総電源電流が前記上限電源電流値を越え、且つ前記第１の機能モジュールを停止させたならば前記動作命令を実行してもＩＣカードの総電源電流が前記上限電源電流値を越えない場合、前記第１の機能モジュールを停止させ、前記第２の機能モジュールに前記動作命令を実行させることを特徴とする請求項１に記載のＩＣカード。
【請求項３】
前記制御部は、前記ホスト装置から前記ホスト装置が供給可能な電源電流に関する情報を取得し、その情報に基づいて前記上限電源電流値を設定することを特徴とする請求項１または請求項２に記載のＩＣカード。
【請求項４】
ＩＣカードに電源電流を供給し、前記ＩＣカードとの間でホスト装置をマスターとし前記ＩＣカードをスレーブとするマスター／スレーブ方式の通信を行い、且つ供給可能な電源電流に関する情報を前記ＩＣカードに送信するホスト装置。
【請求項５】
ホスト装置から電源電流を供給され、前記ホスト装置との間で、前記ホスト装置をマスターとし、ＩＣカードをスレーブとするマスター／スレーブ方式の通信を行い、複数の機能モジュールを有し、各前記機能モジュールの電源電流値の情報と上限電源電流値とを記憶するＩＣカードの制御方法であって、
前記ホスト装置から送信された動作命令を入力した時、ＩＣ前記電源電流値の情報と各前記機能モジュールの動作状況とに基づき、前記動作命令を実行するとＩＣカードの総電源電流が前記上限電源電流値を越えるか否かを判断するステップと、
動作命令を実行するとＩＣカードの総電源電流が前記上限電源電流値を超えない場合、前記動作命令を実行するステップと、
動作命令を実行するとＩＣカードの総電源電流が前記上限電源電流値を越える場合、少なくとも前記動作命令をそのまま実行しないステップと、
を有することを特徴とするＩＣカードの制御方法。
【請求項６】
第１の機能モジュールと第２の機能モジュールとを含む複数の機能モジュールを有するＩＣカードの制御方法であって、
前記第１の機能モジュールが動作している状態において前記ホスト装置から前記第２の機能モジュールの動作命令を入力した時、前記電源電流値の情報と各前記機能モジュールの動作状況とに基づき、前記動作命令を実行するとＩＣカードの総電源電流が前記上限電源電流値を越え、且つ前記第１の機能モジュールを停止させたならば前記動作命令を実行してもＩＣカードの総電源電流が前記上限電源電流値を越えない場合、前記第１の機能モジュールが停止し、前記第２の機能モジュールが前記動作命令を実行するステップを有することを特徴とする請求項５に記載のＩＣカードの制御方法。
【請求項７】
前記ホスト装置から前記ホスト装置が供給可能な電源電流に関する情報を取得し、その情報に基づいて前記上限電源電流値を設定するステップを有することを特徴とする請求項５または請求項６に記載のＩＣカードの制御方法。
【請求項８】
ＩＣカードに電源電流を供給し、前記ＩＣカードとの間でホスト装置をマスターとし前記ＩＣカードをスレーブとするマスター／スレーブ方式の通信を行うホスト装置の制御方法であって、供給可能な電源電流に関する情報を前記ＩＣカードに送信するステップを有することを特徴とするホスト装置の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＣカード、ホスト装置、ＩＣカードの制御方法及びホスト装置の制御方法に関する。
【背景技術】
【０００２】
音楽や映像データを扱う携帯情報機器（例えば、携帯型パーソナルコンピュータ、デジタルスチルカメラ、ＰＤＡ）の記憶装置として、不揮発性メモリカード等のＩＣカードが出回っている。ＩＣカードが普及するにつれて、標準化されたインターフェースを有し、携帯情報機器に種々のオプション機能を付加するＩＣカードが開発されている。さらに、半導体の技術の進歩により、１つのカード上に複数の機能を搭載した多機能ＩＣカードが登場している。又、ＩＣカードとの標準化されたインターフェースを有する種々の装置（ホスト装置）も開発されている。
【０００３】
図１０を用いて、従来例のＩＣカードについて説明する。はじめに従来例のＩＣカードの構成について説明する。図１０は従来のＩＣカードの構成を示すブロック図である。図１０において、１００１はＩＣカード装着スロットを有するホスト装置（例えば携帯情報機器等である。）、１００２は従来例の多機能ＩＣカードである。ホスト装置１００１と多機能ＩＣカード１００２は電力供給ライン１３１、命令ライン１３２、データライン１３３で接続されている。多機能ＩＣカード１００２はホスト装置１００１との通信を実行する入出力部１１１、各機能モジュールの電源電流を記憶する電流情報記憶部１２１、種々の機能を実行する第１〜第３の機能モジュール１１３、１１４、１１５、各機能モジュールに電力を供給する機能モジュール電力供給部１２３を有する。
【０００４】
第１〜第３の機能モジュール１１３〜１１５は、例えば、不揮発性メモリを用いたメモリモジュール、携帯電話モジュール、ＧＰＳモジュール、有線又は無線による通信モジュール、デジタルスチルカメラモジュール、バーコードスキャナモジュール等の任意の機能モジュールである。
【０００５】
ホスト装置１００１と多機能ＩＣカード１００２との間の信号伝送は標準化された通信規格（プロトコル）に則って行なわれる。一般に、ホスト装置がマスター、ＩＣカードがスレーブとして動作するマスター／スレーブ方式のプロトコルが採用されている。マスターであるホスト装置１００１が多機能ＩＣカード１００２に対して命令ライン１３２を通じてコマンドを送り、これに応じて多機能ＩＣカード１００２がホスト装置１００１に命令ライン１３２を通じてレスポンスを返す。ホスト装置１００１からのコマンドに応じて、データライン１３３を通じて双方向にデータを伝送することも出来る。
【０００６】
次に従来の多機能ＩＣカードの制御の概要について説明する。ホスト装置１００１に挿入された直後、多機能ＩＣカード１００２はアイドル状態である。まずホスト装置１００１は多機能ＩＣカード１００２に対して、初期化命令を送る。多機能ＩＣカード１００２が初期化処理を完了すると、ホスト装置１００１は多機能ＩＣカード１００２内の機能モジュール１１３〜１１５以外のブロックに対してアクセスすることができるようになる。この時、機能モジュール１１３〜１１５は停止状態である。
【０００７】
多機能ＩＣカード１００２が初期化完了した後、ホスト装置１００１は多機能ＩＣカード１００２に対して電流情報送信命令を送る。入出力部１１１は電流情報記憶部１２１から各機能モジュール１１３、１１４、１１５の電流情報を入力し、データライン１３３を経由してホスト装置１００１に送る。
【０００８】
電流情報を読み取ったホスト装置１００１は、機能モジュールを動作させるのに必要な電流がホスト装置１００１自身の供給可能な電流容量より少なければ、各機能モジュール１１３、１１４、１１５の起動命令を送る。例えば、第１の機能モジュール１１３を動作させる場合は、第１の機能モジュール１１３の起動命令を機能モジュール電力供給部１２３に送る。機能モジュール電力供給部１２３は第１の機能モジュール１１３に電力を供給する。第１の機能モジュール１１３は、起動命令に応じて動作状態になる。
【０００９】
続けて、第２の機能モジュール１１４、第３の機能モジュール１１５を動作状態にする時は、ホスト装置１００１は第２の機能モジュール１１４、または第３の機能モジュール１１５の起動命令を多機能ＩＣカード１００２に送る。すると、第２の機能モジュール１１４又は第３の機能モジュール１１５は動作状態になり、ホスト装置１００１は各機能モジュール１１３、１１４、１１５を使用可能になる。
【００１０】
上記の様に、多機能ＩＣカード１００２は、ホスト装置１００１からのコマンドに従って、機能モジュールを動作させ若しくは停止させる。多機能ＩＣカード１００２がその機能モジュールを動作させ若しくは停止させ、多機能ＩＣカード１００２に流れる電源電流が変化する。
【００１１】
【特許文献１】特開平６−３３２５８０号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
通信規約のバージョンの違いによって、ホスト装置がＩＣカードの各機能モジュールの電流情報（ＩＣカード情報に含まれる。）を正しく読めない場合がある。ホスト装置がその電流情報を読み取れないＩＣカードと接続された場合、ＩＣカードが、ホスト装置が供給可能な電流よりも多くの電流を必要とする動作状態になる恐れがある。そのような場合、電源電圧の降下、ホスト装置の素子の破壊等の弊害が発生する問題があった。
【００１３】
本発明は、このような問題点に鑑みてなされたものであり、ホスト装置がＩＣカードとの通信により、ＩＣカードの各機能モジュールの電流情報（ＩＣカード情報に含まれる。）を正しく読めない場合にも、ホスト装置の供給可能な電流容量よりも多くの電流がＩＣカードに流れてホスト装置が破壊されることを防止するＩＣカード、ホスト装置、ＩＣカードの制御方法及びホスト装置の制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１４】
この課題を解決するために、本発明のＩＣカード、ホスト装置、ＩＣカードの制御方法及びホスト装置の制御方法は、以下の構成を有する。請求項１に記載の発明は、ホスト装置から電源電流を供給され、複数の機能モジュールと、各前記機能モジュールの電源電流値の情報と上限電源電流値とを記憶する制御部と、前記ホスト装置との間で、前記ホスト装置をマスターとし、ＩＣカードをスレーブとするマスター／スレーブ方式の通信を行う入出力部と、を有し、前記制御部は、前記ホスト装置から送信された動作命令を前記入出力部を通じて入力した時、前記電源電流値の情報と各前記機能モジュールの動作状況とに基づき、前記動作命令を実行するとＩＣカードの総電源電流が前記上限電源電流値を越えるか否かを判断し、超えない場合は前記動作命令を実行し、越える場合は少なくとも前記動作命令をそのまま実行しないことを特徴とするＩＣカードである。
【００１５】
本発明は、ＩＣカード自身がその電源電流値が上限を超えないように自動的に制御するＩＣカードを実現する。複数の機能モジュールが、ホスト装置が供給可能な電流容量よりも多くの電流を必要とする組み合わせで動作することがないため、ホスト装置が破壊されること等を防止できる。
上限電源電流値は一定の電流値（例えばホスト装置とＩＣカードとのシステム規格で定められた値）でも良く、ＩＣカードが接続されたホスト装置毎に異なる値でも良い。上限電源電流値は、電源電流の上限を定める任意の値である。上限電源電流値は、ホスト装置が破壊しない限界の電流値であっても良く、そのような限界の電流値から所定の余裕を持った値であっても良い。
【００１６】
ＩＣカードが電源電流を制限する方法として、電源電流自体を直接制御しても良く、他のパラメータを制御して（例えばクロックのＯＮ／ＯＦＦ制御）間接的に電源電流を制御しても良い。
電源電流が上限電源電流値を越えないようにする方法として、ＩＣカードは、例えば動作命令に係る動作を実行しなくても良い（動作状態は変化なし）。
【００１７】
請求項２に記載の発明は、第１の機能モジュールと第２の機能モジュールとを含む複数の機能モジュールを有し、前記制御部は、前記第１の機能モジュールが動作している状態において前記ホスト装置から前記第２の機能モジュールの動作命令を入力した時、前記電源電流値の情報と各前記機能モジュールの動作状況とに基づき、前記動作命令を実行するとＩＣカードの総電源電流が前記上限電源電流値を越え、且つ前記第１の機能モジュールを停止させたならば前記動作命令を実行してもＩＣカードの総電源電流が前記上限電源電流値を越えない場合、前記第１の機能モジュールを停止させ、前記第２の機能モジュールに前記動作命令を実行させることを特徴とする請求項１に記載のＩＣカードである。本発明は、電源電流値が上限を超えないようにしてホスト装置からの命令を実行するＩＣカードを実現する。
【００１８】
請求項３に記載の発明は、前記制御部は、前記ホスト装置から前記ホスト装置が供給可能な電源電流に関する情報を取得し、その情報に基づいて前記上限電源電流値を設定することを特徴とする請求項１から請求項４のいずれかの請求項に記載のＩＣカードである。
本発明は、ホスト装置に応じて適切な上限電流値を設定し、電源電流値が上限を超えないように自動的に制御するＩＣカードを実現する。
【００１９】
請求項４に記載の発明は、ＩＣカードに電源電流を供給し、前記ＩＣカードとの間でホスト装置をマスターとし前記ＩＣカードをスレーブとするマスター／スレーブ方式の通信を行い、且つ供給可能な電源電流に関する情報を前記ＩＣカードに送信するホスト装置である。
本発明は、本発明のＩＣカードがホスト装置に応じた適切な上限電源電流値を設定するように、ＩＣカードに情報を送信するホスト装置を実現する。ホスト装置は任意の装置であって、例えばパーソナルコンピュータ、携帯電話、携帯情報端末、デジタルカメラ、ビデオテープレコーダ等である。
請求項５〜８に記載の発明は、ＩＣカード及びホスト装置に上記の機能を実行させるＩＣカードの制御方法及びホスト装置の制御方法である。
【発明の効果】
【００２０】
本発明によれば、ＩＣカード自身がその電源電流値が上限を超えないように自動的に制御するＩＣカード及びその制御方法を実現できるという有利な効果が得られる。複数の機能モジュールが、ホスト装置が供給可能な電流容量よりも多くの電流を必要とする組み合わせで動作することがないため、ホスト装置が破壊されること等を防止できる。
本発明によれば、ホスト装置に装着されたＩＣカードがホスト装置に応じた適切な上限電源電流値を設定するホスト装置及びホスト装置の制御方法を実現できるという有利な効果が得られる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の実施をするための最良の形態を具体的に示した実施例について、図面と共に記載する。
【００２２】
《実施の形態１》
図１〜図５を用いて、実施の形態１の多機能ＩＣカード、ホスト装置、多機能ＩＣカードの制御方法及びホスト装置の制御方法について説明する。
はじめに、実施の形態１の多機能ＩＣカードの構成について説明する。図１は本発明の実施の形態１の多機能ＩＣカードの構成を示すブロック図である。図１において、１０１はＩＣカード装着スロットを有するホスト装置、１０２は多機能ＩＣカードである。ホスト装置１０１は携帯情報端末である。ホスト装置１０１は任意のデジタル信号処理装置であっても良い。例えば、コンピュータ、デジタルＡＶ装置、又は携帯電話等である。
多機能ＩＣカード１０２はホスト装置１０１との通信を実行する入出力部１１１、多機能ＩＣカード全体の動作を制御する制御部１１２、種々の機能を実行する第１〜第３の機能モジュール１１３、１１４、１１５を有する。制御部１１２は、電流情報記憶部１２１、電力制御部１２２、各機能モジュール１１３〜１１５に電力を供給する機能モジュール電力供給部１２３を有する。
【００２３】
図１において、ホスト装置１０１と多機能ＩＣカード１０２とは、ホスト装置１０１をマスターとし多機能ＩＣカード１０２をスレーブとして、標準化された通信規格（プロトコル）に則った通信を行う。ホスト装置１０１と多機能ＩＣカード１０２間は電力供給ライン１３１、命令ライン１３２、データライン１３３で接続されている。ホスト装置１０１は電力供給ラインを経由して、多機能ＩＣカード１０２に電力を供給する。マスターであるホスト装置１０１と多機能ＩＣカード１０２とは、従来例と同様の方法で通信する。
【００２４】
図１に示す多機能ＩＣカード１０２は３つの機能モジュールを持つ。本発明は３つの機能モジュールを持った多機能ＩＣカードに限定されるものではなく、機能モジュールの数はいくつでも良い。図１では、第１の機能モジュール１１３は無線通信を行うBluetooth（登録商標）モジュール、第２の機能モジュール１１４はバーコードスキャナモジュール、第３の機能モジュール１１５はカメラモジュールである。ただし、各機能モジュール１１３、１１４、１１５は、Bluetoothモジュール、バーコードスキャナモジュール、カメラモジュールに限定されるものはない。例えば、各機能モジュール１１３、１１４、１１５は、ＧＰＳ（Global Positioning System）モジュール、無線ＬＡＮモジュール、指紋認証モジュール、フラッシュメモリモジュール、他の規格に準拠する通信モジュールなどであってもよい。
【００２５】
入出力部１１１は、ホスト装置１０１からのコマンドを入力し、その内容に応じて電力制御部１２２、各機能モジュール１１３〜１１５に転送する。入出力部１１１は、電流情報記憶部１２１、電力制御部１２２、各機能モジュール１１３〜１１５などからの情報又はレスポンスを入力し、命令ライン１３２を経由してレスポンスをホスト装置１０１に転送する。データライン１３３を経由して更にデータをホスト装置１０１から多機能ＩＣカード１０２に転送し、又はデータを多機能ＩＣカード１０２からホスト装置１０１に転送しても良い。
電流情報記憶部１２１は、各機能モジュールの電源電流情報（各機能モジュールの最大電流値を図２に示す。）及び上限電源電流値を記憶している。ホスト装置１０１と電力制御部１２２は電流情報記憶部１２１に記憶された電流情報を読み取ることができる。
【００２６】
電力制御部１２２は、機能モジュールの動作命令を入力すると、電流情報記憶部１２１より各機能モジュール１１３〜１１５の電流情報を読み取る。電力制御部１２２は、機能モジュール電力供給部１２３から各機能モジュール１１３〜１１５の動作状況情報を読み取る。ホスト装置１０１より発行された機能モジュールの動作命令は、機能モジュール単位で発行される場合と、複数の機能モジュールに対して発行される場合がある。電力制御部１２２は、指定された機能モジュールを動作させても、多機能ＩＣカード１０２の総電源電流が上限電源電流値以下であるか否かを判断し、判断結果を入出力部１１１に送る。
【００２７】
多機能ＩＣカード１０２の総電源電流が上限電源電流値以下の場合、電力制御部１２２は、機能モジュール電力供給部１２３に対してホスト装置１０１が指定した機能モジュールに電力を供給するよう命令する（動作命令を送信する。）。機能モジュール電力供給部１２３は機能モジュールに電力を供給する。入出力部１１１は動作命令を各機能モジュール１１３〜１１５に転送し、各機能モジュール１１３〜１１５から送られたレスポンスをホスト装置１０１に返す。
【００２８】
一方、多機能ＩＣカード１０２の総電源電流が上限電源電流値より大きい場合、電力制御部１２２は、機能モジュール電力供給部１２３に対して、ホスト装置１０１が指定した機能モジュールに電力を供給する命令を送らない（動作命令を送信しない。）。機能モジュール電力供給部１２３は機能モジュールに電力を供給しない。入出力部１１１は動作命令を各機能モジュール１１３〜１１５に転送せず、入出力部１１１自身が動作命令を実行しないというレスポンス（例えばＮＡＫ）をホスト装置１０１に返す。
【００２９】
また、電力制御部１２２は各機能モジュール１１３〜１１５の動作停止命令を入力すると、機能モジュール電力供給部１２３に対して、ホスト装置１０１が指定した機能モジュールに電力を供給することを停止するよう命令する。
【００３０】
実施の形態において、上限電源電流値は具体的には各ホスト装置１０１が供給可能な最大の電源電流値である。ホスト装置１０１は、多機能ＩＣカード１０２を装着した時、又は多機能ＩＣカード１０２を装着した状態で電源をＯＮした時、最初に多機能ＩＣカード１０２の入出力部１１１及び制御部１１２を初期化する。次に、ホスト装置１０１は、ホスト装置１０１が多機能ＩＣカード１０２に供給可能な上限電源電流値に関する情報を多機能ＩＣカード１０２の制御部１１２に送信する。制御部１１２は、上限電源電流値を電流情報記憶部１２１に記憶する。その後、ホスト装置１０１が多機能ＩＣカード１０２にいずれかの機能モジュールの動作命令を送信すると、電力制御部１２２は、その動作命令を実行した場合に多機能ＩＣカード１０２の総電源電流が上限電源電流値以下であるか否かを判断し、それに応じて機能モジュールを動作させ、又は動作させない。
【００３１】
上限電源電流値に関する情報は、上限電源電流値を導出可能な情報である。例えば上限電源電流値そのもの（例えば３００（単位：ｍＡ））である。供給可能な上限電源電流値に基づいてホスト装置を複数のクラスに分類し（例えばクラス１〜５）、ホスト装置が属するクラスの情報（例えばクラス３は上限電源電流値が３００〜４００ｍＡのホスト装置）を、上限電源電流値に関する情報として多機能ＩＣカード１０２に送信しても良い。
これに代えて、上限電源電流値は、ホスト装置１０１と多機能ＩＣカード１０２とのシステム規格で定められた一定の値であっても良い。この場合、多機能ＩＣカード１０２は、工場で上限電源電流値を電流情報記憶部１２１にインストールされる。
【００３２】
実施の形態において、機能モジュール電力供給部１２３は各機能モジュールの電源電流自体を直接制御する。機能モジュール電力供給部１２３は電力制御部１２２から機能モジュールの動作命令を入力すると、指定された機能モジュールに電力を供給し、電力制御部１２２から機能モジュールの停止命令を入力すると、指定された機能モジュールへの電力供給を停止する。これに代えて、他のパラメータを制御して（例えば機能モジュールに入力するクロックのＯＮ／ＯＦＦ制御、機能モジュールのリセット／その解除）間接的に各機能モジュールの電源電流を制御しても良い。またはそれらを組み合わせて実行しても良い。
【００３３】
図３は、ホスト装置１０１が多機能ＩＣカード１０２中の１つの機能モジュール（第１の機能モジュール１１３）に対して動作命令を発行した場合の実施の形態１の多機能ＩＣカード１０２の制御方法を示すフローチャートである。ステップ３０１で、入出力部１１１が第１の機能モジュール１１３の動作命令を入力する。
ステップ３０２で、電力制御部１２２は第２の機能モジュール１１４が動作状態か否か判断する。第２の機能モジュール１１４が動作状態の場合は、ステップ３０３に進む。ステップ３０３で、電力制御部１２２は第３の機能モジュール１１５が動作状態か否か判断する。第３の機能モジュール１１５が動作状態の場合は、ステップ３０４に進む。このケースでは、第２の機能モジュール１１４と第３の機能モジュール１１５が共に動作状態である。
【００３４】
ステップ３０４で、電力制御部１２２はすべての機能モジュール１１３、１１４、１１５が動作した場合の多機能ＩＣカード１０２の総電源電流Ｉ（＝Ｉ１＋Ｉ２＋Ｉ３）を算出する。多機能ＩＣカード１０２の総電源電流値Ｉは、第１〜第３の機能モジュール１１３〜１１５の最大電流値の和である。
ステップ３０３で第３の機能モジュール１１５が停止状態の場合は、ステップ３０５に進む。このケースでは、第２の機能モジュール１１４のみが動作状態である。ステップ３０５で、電力制御部１２２は第１の機能モジュール１１３、第２の機能モジュール１１４が動作した場合の多機能ＩＣカード１０２の総電源電流Ｉ（＝Ｉ１＋Ｉ２）を算出する。
【００３５】
ステップ３０２で第２の機能モジュール１１４が停止状態の場合は、ステップ３０６に進む。ステップ３０６で、電力制御部１２２は第３の機能モジュール１１５が動作状態か否か判断する。
ステップ３０６で第３の機能モジュール１１５が動作状態の場合は、ステップ３０７に進む。このケースでは、第３の機能モジュール１１５のみが動作状態である。ステップ３０７で、電力制御部１２２は第１の機能モジュール１１３、第３の機能モジュール１１５が動作した場合の多機能ＩＣカード１０２の総電源電流Ｉ（＝Ｉ１＋Ｉ３）を算出する。
ステップ３０６で第３の機能モジュール１１５が停止状態の場合は、ステップ３０８に進む。このケースでは、第２の機能モジュール１１４と第３の機能モジュール１１５が共に停止状態である。ステップ３０８で、電力制御部１２２は第１の機能モジュール１１３が動作した場合の多機能ＩＣカード１０２の総電源電流値Ｉ（＝Ｉ１）を算出する。
【００３６】
ステップ３０９で、電力制御部１２２は多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下であるか否か判断する。ステップ３０９で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下である場合、ステップ３１０に進む。ステップ３１０で、電力制御部１２２はホスト装置１０１からの指示通り第１の機能モジュール１１３を動作させる（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信する。第１の機能モジュール１１３に電力が供給される。）。このフローチャートを終了する。
【００３７】
ステップ３０９で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合、ステップ３１１に進む。ステップ３１１で、電力制御部１２２は第１の機能モジュール１１３を動作させない（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信しない。）。このフローチャートを終了する。
多機能ＩＣカード１０２の起動時において、単体の電源電流が上限電源電流値を超える機能モジュールは初期化しないとすれば、ステップ３０６で第３の機能モジュール１１５が停止状態の場合（Ｎｏの場合）は、ステップ３１０に進む（ステップ３０８、３０９をスキップする。）こととしてもよい。
【００３８】
図４、５は、ホスト装置１０１が多機能ＩＣカード１０２中の２つの機能モジュール（第１の機能モジュール１１３及び第２の機能モジュール１１４）に対して動作命令を発行した場合を想定している。ステップ４０１で、入出力部１１１が第１の機能モジュール１１３及び第２の機能モジュール１１４に対する動作命令を入力する。
ステップ４０２で、電力制御部１２２は第３の機能モジュール１１５が動作状態か否か判断する。ステップ４０２で第３の機能モジュール１１５が動作状態の場合は、ステップ４０３に進む。ステップ４０３で、電力制御部１２２はすべての機能モジュール１１３、１１４、１１５が動作した場合の多機能ＩＣカード１０２の総電源電流Ｉ（＝Ｉ１＋Ｉ２＋Ｉ３）を算出する。
【００３９】
ステップ４０４で、電力制御部１２２は多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下であるか否か判断する。多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下である場合、ステップ４０５に進む。ステップ４０５で、電力制御部１２２はホスト装置１０１からの指示通り第１の機能モジュール１１３及び第２の機能モジュール１１４を動作させる（第１の機能モジュール１１３及び第２の機能モジュール１１４の動作命令を機能モジュール電力供給部１２３に送信し、機能モジュール電力供給部１２３は第１〜第３の機能モジュール１１３〜１１５に電力を供給する。）。このフローチャートを終了する。
【００４０】
ステップ４０４で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合、ステップ４０６に進む。ステップ４０６で、電力制御部１２２は第１の機能モジュール１１３、第３の機能モジュール１１５が動作した場合の多機能ＩＣカード１０２の総電源電流Ｉ（＝Ｉ１＋Ｉ３）を算出する。
ステップ４０７で、電力制御部１２２は多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下であるか否か判断する。ステップ４０７で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下である場合、ステップ４０８に進む。ステップ４０８で、電力制御部１２２は第１の機能モジュール１１３を動作させ、第２の機能モジュール１１４を動作させない（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信し、第２の機能モジュール１１４の動作命令を機能モジュール電力供給部１２３に送信しない。機能モジュール電力供給部１２３は第１及び第３の機能モジュール１１３、１１５のみに電力を供給する。）。このフローチャートを終了する。
【００４１】
ステップ４０７で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合、ステップ４０９に進む。ステップ４０９で、電力制御部１２２は第２の機能モジュール１１４、第３の機能モジュール１１５が動作した場合の多機能ＩＣカード１０２の総電源電流Ｉ（＝Ｉ２＋Ｉ３）を算出する。
ステップ４１０で、電力制御部１２２は多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下であるか否か判断する。ステップ４１０で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下である場合、ステップ４１１に進む。ステップ４１１で、電力制御部１２２は第１の機能モジュール１１３を動作させず、第２の機能モジュール１１４を動作させる（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信せず、第２の機能モジュール１１４の動作命令を機能モジュール電力供給部１２３に送信する。機能モジュール電力供給部１２３は第２及び第３の機能モジュール１１４、１１５のみに電力を供給する。）。このフローチャートを終了する。
【００４２】
ステップ４１０で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合、ステップ４１２に進む。ステップ４１２で、電力制御部１２２は第１の機能モジュール１１３及び第２の機能モジュール１１４を動作させない（第１の機能モジュール１１３及び第２の機能モジュール１１４の動作命令を機能モジュール電力供給部１２３に送信しない。機能モジュール電力供給部１２３は第３の機能モジュール１１５のみに電力を供給する。）。このフローチャートを終了する。
【００４３】
ステップ４０２で第３の機能モジュール１１５が停止状態の場合は、ステップ５０１に進む（以下図５）。ステップ５０１で、電力制御部１２２は第１の機能モジュール１１３、第２の機能モジュール１１４が動作した場合の多機能ＩＣカード１０２の総電源電流Ｉ（＝Ｉ１＋Ｉ２）を算出する。
ステップ５０２で、電力制御部１２２は多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下であるか否か判断する。ステップ５０２で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下である場合、ステップ５０３に進む。ステップ５０３で、電力制御部１２２はホスト装置１０１からの指示通り第１の機能モジュール１１３及び第２の機能モジュール１１４を動作させる（第１の機能モジュール１１３及び第２の機能モジュール１１４の動作命令を機能モジュール電力供給部１２３に送信する。機能モジュール電力供給部１２３は第１及び第２の機能モジュール１１３、１１４に電力を供給する。）。このフローチャートを終了する。
【００４４】
ステップ５０２で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合、ステップ５０４に進む。ステップ５０４で、電力制御部１２２は第１の機能モジュール１１３が動作した場合の多機能ＩＣカード１０２の総電源電流Ｉ（＝Ｉ１）を算出する。
ステップ５０５で、電力制御部１２２は多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下であるか否か判断する。ステップ５０５で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下である場合、ステップ５０６に進む。ステップ５０６で、電力制御部１２２は第１の機能モジュール１１３を動作させ、第２の機能モジュール１１４を動作させない（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信し、第２の機能モジュール１１４の動作命令を機能モジュール電力供給部１２３に送信しない。機能モジュール電力供給部１２３は第１の機能モジュール１１３に電力を供給する。）。このフローチャートを終了する。
【００４５】
ステップ５０５で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合、ステップ５０７に進む。ステップ５０７で、電力制御部１２２は第２の機能モジュール１１４が動作した場合の多機能ＩＣカード１０２の総電源電流Ｉ（＝Ｉ２）を算出する。
ステップ５０８で、電力制御部１２２は多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下であるか否か判断する。ステップ５０８で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下である場合、ステップ５０９に進む。ステップ７０９で、電力制御部１２２は第１の機能モジュール１１３を動作させず、第２の機能モジュール１１４を動作させる（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信せず、第２の機能モジュール１１４の動作命令を機能モジュール電力供給部１２３に送信する。機能モジュール電力供給部１２３は第２の機能モジュール１１４に電力を供給する。）。このフローチャートを終了する。
【００４６】
ステップ５０８で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合、ステップ５１０に進む。ステップ５１０で、電力制御部１２２は第１の機能モジュール１１３及び第２の機能モジュール１１４を動作させない（第１の機能モジュール１１３及び第２の機能モジュール１１４の動作命令を機能モジュール電力供給部１２３に送信しない。）。このフローチャートを終了する。
【００４７】
多機能ＩＣカード１０２の起動時において、単体に流れる電源電流が上限電源電流値を上回る機能モジュールを初期化しないとすれば、ステップ５０２で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合（Ｎｏの場合）は、ステップ５０６または５０９に進む（ステップ５０４、５０５、５０７、５０８をスキップする。）こととしてもよい。
【００４８】
本実施の形態（図４、図５）において、第１の機能モジュール１１３及び第２の機能モジュール１１４を共に動作させることができない場合（ステップ４０４でＮｏまたはステップ５０２でＮｏの場合）、電力制御部１２２は第１の機能モジュール１１３を優先的に動作させている。これに代えて、電力制御部１２２は第２の機能モジュール１１４を優先的に動作させてもよい。また、ユーザが選択できることとしてもよい。
本実施の形態において、ホスト装置１０１が１度に１つの機能モジュールに対して動作命令を発行した場合及び１度に２つの機能モジュールに対して動作命令を発行した場合について説明した。さらに、ホスト装置１０１が１度にすべての機能モジュールに対して動作命令を発行した場合でも、本実施の形態の多機能ＩＣカードは同様の効果を得ることができる。
【００４９】
本実施の形態では、ホスト装置から動作命令された機能モジュールが動作すると多機能ＩＣカードの総電源電流値が上限電源電流値を越えてしまう場合、その機能モジュールを動作させない（その機能モジュールは停止状態を維持する。）。これにより、本実施の形態の多機能ＩＣカードは上限電源電流値を超える大電流が流れてホスト装置が破壊されることを防止することができる。
【００５０】
《実施の形態２》
図１、６〜９を用いて、実施の形態２の多機能ＩＣカード、ホスト装置、多機能ＩＣカードの制御方法及びホスト装置の制御方法について説明する。本実施の形態が実施の形態１と異なる点は、多機能ＩＣカードが、現在実行している機能を継続することよりも、新たに入力した機能の動作を優先することである。それ以外の点において、実施の形態２の多機能ＩＣカードは実施の形態１と同一である。実施の形態２の多機能ＩＣカードは、実施の形態１と同一の構成を有する（図１）。
【００５１】
実施の形態２の電力制御部１２２は、機能モジュールの動作命令を入力すると、電流情報記憶部１２１より各機能モジュール１１３〜１１５の電流情報を読み取る。電力制御部１２２は、機能モジュール電力供給部１２３から各機能モジュール１１３〜１１５の動作状況情報を読み取る。ホスト装置１０１より発行された機能モジュールの動作命令は、機能モジュール単位で発行される場合と、複数の機能モジュールに対して発行される場合がある。電力制御部１２２は、指定された機能モジュールを動作させても、多機能ＩＣカード１０２の総電源電流が上限電源電流値以下であるか否かを判断し、判断結果を入出力部１１１に送る。
【００５２】
多機能ＩＣカード１０２の総電源電流が上限電源電流値以下の場合、電力制御部１２２は、機能モジュール電力供給部１２３に対してホスト装置１０１が指定した機能モジュールに電力を供給するよう命令する（動作命令を送信する。）。機能モジュール電力供給部１２３は機能モジュールに電力を供給する。入出力部１１１は動作命令を各機能モジュール１１３〜１１５に転送し、各機能モジュール１１３〜１１５から送られたレスポンスをホスト装置１０１に返す。
【００５３】
一方、多機能ＩＣカード１０２の総電源電流が上限電源電流値より大きい場合、電力制御部１２２は、既に動作中の機能モジュールを停止させれば、新たに動作命令を受信した機能モジュールを動作させても、多機能ＩＣカード１０２の総電源電流が上限電源電流値以下であるか否かを判断する。
既に動作中の機能モジュールを停止させれば多機能ＩＣカード１０２の総電源電流が上限電源電流値以下の場合、電力制御部１２２は、機能モジュール電力供給部１２３に対して既に動作中の機能モジュールに電力を供給停止するよう命令し（停止命令を送信し、）、新たに動作命令を受信した機能モジュールに電力を供給するよう命令する（動作命令を送信する。）。機能モジュール電力供給部１２３は停止命令を受信した機能モジュールへの電力供給を停止し、動作命令を受信した機能モジュールに電力を供給する。入出力部１１１は動作命令を各機能モジュール１１３〜１１５に転送し、各機能モジュール１１３〜１１５から送られたレスポンスをホスト装置１０１に返す。
【００５４】
既に動作中の機能モジュールを停止させても多機能ＩＣカード１０２の総電源電流が上限電源電流値より大きい場合、電力制御部１２２は、機能モジュール電力供給部１２３に対して新たに動作命令を受信した機能モジュールに電力を供給する命令を送らない（動作命令を送信しない。）。機能モジュール電力供給部１２３は機能モジュールに電力を供給しない。入出力部１１１は動作命令を各機能モジュール１１３〜１１５に転送せず、入出力部１１１自身が動作命令を実行しないというレスポンス（例えばＮＡＫ）をホスト装置１０１に返す。
【００５５】
図６〜９は、ホスト装置１０１が多機能ＩＣカード１０２中の１つの機能モジュール（第１の機能モジュール１１３）に対して動作命令を発行した場合の実施の形態２の多機能ＩＣカード１０２の制御方法を示すフローチャートである。ステップ６０１で、入出力部１１１が第１の機能モジュール１１３の動作命令を入力する。
ステップ６０２で、電力制御部１２２は第２の機能モジュール１１４が動作状態か否か判断する。第２の機能モジュール１１４が停止状態の場合は、ステップ６０３に進む。ステップ６０３で、電力制御部１２２は第３の機能モジュール１１５が動作状態か否か判断する。第３の機能モジュール１１５が停止状態の場合は、ステップ６０４に進む。このケースでは、第２の機能モジュール１１４と第３の機能モジュール１１５が共に停止状態である。
【００５６】
ステップ６０４で、電力制御部１２２は第１の機能モジュール１１３が動作した場合の多機能ＩＣカード１０２の総電源電流値Ｉ（＝Ｉ１）を算出する。ステップ６０５で、電力制御部１２２は多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下であるか否か判断する。
ステップ６０５で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下である場合、ステップ６０６に進む。ステップ６０６で、電力制御部１２２はホスト装置１０１からの指示通り第１の機能モジュール１１３を動作させる（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信する。第１の機能モジュール１１３に電力が供給される。）。このフローチャートを終了する。
【００５７】
ステップ６０５で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合、ステップ６０７に進む。ステップ６０７で、電力制御部１２２は第１の機能モジュール１１３を動作させない（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信しない。）。このフローチャートを終了する。
【００５８】
ステップ６０３で第３の機能モジュール１１５が動作状態の場合は、ステップ７０１に進む（以下図７）。このケースでは、第３の機能モジュール１１５のみが動作状態である。ステップ７０１で、電力制御部１２２は第１の機能モジュール１１３、第３の機能モジュール１１５が動作した場合の多機能ＩＣカード１０２の総電源電流Ｉ（＝Ｉ１＋Ｉ３）を算出する。ステップ７０２で、電力制御部１２２は多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下であるか否か判断する。
ステップ７０２で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下である場合、ステップ７０３に進む。ステップ７０３で、電力制御部１２２はホスト装置１０１からの指示通り第１の機能モジュール１１３を動作させる（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信する。第１の機能モジュール１１３に電力が供給される。）。このフローチャートを終了する。
【００５９】
ステップ７０２で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合、ステップ７０４に進む。ステップ７０４で、電力制御部１２２は第１の機能モジュール１１３が動作した場合の多機能ＩＣカード１０２の総電源電流値Ｉ（＝Ｉ１）を算出する。ステップ７０５で、電力制御部１２２は多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下であるか否か判断する。
ステップ７０５で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下である場合、ステップ７０６に進む。ステップ７０６で、電力制御部１２２は第３の機能ユニット１１５を停止させ、ホスト装置１０１からの指示通り第１の機能モジュール１１３を動作させる（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信する。第１の機能モジュール１１３に電力が供給される。）。このフローチャートを終了する。
【００６０】
ステップ７０５で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合、ステップ７０７に進む。ステップ７０７で、電力制御部１２２は第１の機能モジュール１１３を動作させない（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信しない。）。このフローチャートを終了する。
【００６１】
ステップ６０２で第２の機能モジュール１１４が動作状態の場合は、ステップ６０８に進む。ステップ６０８で、電力制御部１２２は第３の機能モジュール１１５が動作状態か否か判断する。第３の機能モジュール１１５が停止状態の場合は、ステップ８０１に進む（以下図８）。このケースでは、第２の機能モジュール１１４のみが動作状態である。ステップ８０１で、電力制御部１２２は第１の機能モジュール１１３、第２の機能モジュール１１４が動作した場合の多機能ＩＣカード１０２の総電源電流Ｉ（＝Ｉ１＋Ｉ２）を算出する。ステップ８０２で、電力制御部１２２は多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下であるか否か判断する。
ステップ８０２で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下である場合、ステップ８０３に進む。ステップ８０３で、電力制御部１２２はホスト装置１０１からの指示通り第１の機能モジュール１１３を動作させる（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信する。第１の機能モジュール１１３に電力が供給される。）。このフローチャートを終了する。
【００６２】
ステップ８０２で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合、ステップ８０４に進む。ステップ８０４で、電力制御部１２２は第１の機能モジュール１１３が動作した場合の多機能ＩＣカード１０２の総電源電流値Ｉ（＝Ｉ１）を算出する。ステップ８０５で、電力制御部１２２は多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下であるか否か判断する。
ステップ８０５で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下である場合、ステップ８０６に進む。ステップ８０６で、電力制御部１２２は第２の機能ユニット１１４を停止させ、ホスト装置１０１からの指示通り第１の機能モジュール１１３を動作させる（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信する。第１の機能モジュール１１３に電力が供給される。）。このフローチャートを終了する。
【００６３】
ステップ８０５で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合、ステップ８０７に進む。ステップ８０７で、電力制御部１２２は第１の機能モジュール１１３を動作させない（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信しない。）。このフローチャートを終了する。
【００６４】
ステップ６０８で第３の機能モジュール１１５が動作状態の場合は、ステップ９０１に進む（以下図９）。このケースでは、第２の機能モジュール１１４と第３の機能モジュール１１５が共に動作状態である。ステップ９０１で、電力制御部１２２は第１の機能モジュール１１３、第２の機能モジュール１１４、第３の機能モジュール１１５が動作した場合の多機能ＩＣカード１０２の総電源電流Ｉ（＝Ｉ１＋Ｉ２＋Ｉ３）を算出する。ステップ９０２で、電力制御部１２２は多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下であるか否か判断する。
ステップ９０２で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下である場合、ステップ９０３に進む。ステップ９０３で、電力制御部１２２はホスト装置１０１からの指示通り第１の機能モジュール１１３を動作させる（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信する。第１の機能モジュール１１３に電力が供給される。）。このフローチャートを終了する。
【００６５】
ステップ９０２で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合、ステップ９０４に進む。ステップ９０４で、電力制御部１２２は第１の機能モジュール１１３、第２の機能モジュール１１４が動作した場合の多機能ＩＣカード１０２の総電源電流Ｉ（＝Ｉ１＋Ｉ２）を算出する。ステップ９０５で、電力制御部１２２は多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下であるか否か判断する。
ステップ９０５で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下である場合、ステップ９０６に進む。ステップ９０６で、電力制御部１２２は第３の機能ユニット１１５を停止させ、ホスト装置１０１からの指示通り第１の機能モジュール１１３を動作させる（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信する。第１の機能モジュール１１３に電力が供給される。）。このフローチャートを終了する。
【００６６】
ステップ９０５で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合、ステップ９０７に進む。ステップ９０７で、電力制御部１２２は第１の機能モジュール１１３、第３の機能モジュール１１５が動作した場合の多機能ＩＣカード１０２の総電源電流Ｉ（＝Ｉ１＋Ｉ３）を算出する。ステップ９０８で、電力制御部１２２は多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下であるか否か判断する。
ステップ９０８で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下である場合、ステップ９０９に進む。ステップ９０９で、電力制御部１２２は第２の機能ユニット１１４を停止させ、ホスト装置１０１からの指示通り第１の機能モジュール１１３を動作させる（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信する。第１の機能モジュール１１３に電力が供給される。）。このフローチャートを終了する。
【００６７】
ステップ９０８で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合、ステップ９１０に進む。ステップ９１０で、電力制御部１２２は第１の機能モジュール１１３が動作した場合の多機能ＩＣカード１０２の総電源電流値Ｉ（＝Ｉ１）を算出する。ステップ９１１で、電力制御部１２２は多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下であるか否か判断する。
ステップ９１１で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０以下である場合、ステップ９１２に進む。ステップ９１２で、電力制御部１２２は第２の機能ユニット１１４、第３の機能ユニット１１５を停止させ、ホスト装置１０１からの指示通り第１の機能モジュール１１３を動作させる（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信する。第１の機能モジュール１１３に電力が供給される。）。このフローチャートを終了する。
【００６８】
ステップ９１１で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合、ステップ９１３に進む。ステップ９１３で、電力制御部１２２は第１の機能モジュール１１３を動作させない（第１の機能モジュール１１３の動作命令を機能モジュール電力供給部１２３に送信しない。）。このフローチャートを終了する。
【００６９】
多機能ＩＣカード１０２の起動時において、単体に流れる電源電流が上限電源電流値を上回る機能モジュールを初期化しないとすれば、ステップ６０３で第３の機能モジュール１１５が動作状態の場合（Ｎｏの場合）は、ステップ６０６に進む（ステップ６０４、６０５をスキップする。）こととしてもよい。ステップ７０２で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合（Ｎｏの場合）は、ステップ７０６に進む（ステップ７０４、７０５をスキップする。）こととしてもよい。ステップ８０２で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合（Ｎｏの場合）は、ステップ８０６に進む（ステップ８０４、８０５をスキップする。）こととしてもよい。ステップ９０８で多機能ＩＣカード１０２の総電源電流値Ｉが上限電源電流値Ｉ０を越える場合（Ｎｏの場合）は、ステップ９１２に進む（ステップ９１０、９１１をスキップする。）こととしてもよい。
【００７０】
本実施の形態（図６〜図９）において、第２の機能モジュール１１４及び第３の機能モジュール１１５を共に動作させることができない場合（ステップ９０２でＮｏの場合）、電力制御部１２２は第２の機能モジュール１１４を優先的に動作させている。これに代えて、電力制御部１２２は第３の機能モジュール１１５を優先的に動作させてもよい。また、ユーザが選択できることとしてもよい。
本実施の形態において、ホスト装置１０１が１度に１つの機能モジュールに対して動作命令を発行した場合について説明した。さらに、ホスト装置１０１が１度に２つの機能モジュールに対して動作命令を発行した場合及び１度にすべての機能モジュールに対して動作命令を発行した場合でも、本実施の形態の多機能ＩＣカードは同様の効果を得ることができる。
【００７１】
本実施の形態では、ホスト装置から動作命令された機能モジュールが動作すると多機能ＩＣカードの総電源電流値が上限電源電流値を越えてしまう場合、現在動作中の機能モジュールを停止し、ホスト装置から動作命令された機能モジュールを動作させる。これにより、本実施の形態の多機能ＩＣカードは上限電源電流値を超える大電流が流れてホスト装置が破壊されることを防止することができる。
【００７２】
上記の実施の形態において、入出力部は、ホスト装置からの各機能モジュールの動作命令を制御部と各機能モジュールとの両方に送信した。これに代えて入出力部は、起動／停止命令を制御部のみに送信し、それ以外の命令を各機能モジュールに送信しても良い。
【産業上の利用可能性】
【００７３】
本発明のＩＣカード、ホスト装置、ＩＣカードの制御方法及びホスト装置の制御方法は、ホスト装置にＩＣカードを装着して機能させるシステムの構成装置及びその制御方法として有用である。
【図面の簡単な説明】
【００７４】
【図１】本発明の実施の形態１の多機能ＩＣカードの構成を示すブロック図
【図２】本発明の実施の形態１の多機能ＩＣカードの各機能モジュールの電流情報の一例を示す図
【図３】本発明の実施の形態１の多機能ＩＣカードの制御方法を示すフローチャート
【図４】本発明の実施の形態１の多機能ＩＣカードの他の制御方法を示すフローチャート
【図５】本発明の実施の形態１の多機能ＩＣカードの他の制御方法を示すフローチャート
【図６】本発明の実施の形態２の多機能ＩＣカードの他の制御方法を示すフローチャート
【図７】本発明の実施の形態２の多機能ＩＣカードの他の制御方法を示すフローチャート
【図８】本発明の実施の形態２の多機能ＩＣカードの他の制御方法を示すフローチャート
【図９】本発明の実施の形態２の多機能ＩＣカードの他の制御方法を示すフローチャート
【図１０】従来例の多機能ＩＣカードの構成を示すブロック図
【符号の説明】
【００７５】
１０１、１００１  ホスト装置
１０２、１００２  多機能ＩＣカード
１１１          入出力部
１１２          制御部
１１３          第１の機能モジュール
１１４          第２の機能モジュール
１１５          第３の機能モジュール
１２１          電流情報記憶部
１２２          電力制御部
１２３          機能モジュール電力制御部
１３１          電力供給ライン
１３２          命令ライン
１３３          データライン
【図１】
2005099926.tif 000003
【図２】
2005099926.tif 000004
【図３】
2005099926.tif 000005
【図４】
2005099926.tif 000006
【図５】
2005099926.tif 000007
【図６】
2005099926.tif 000008
【図７】
2005099926.tif 000009
【図８】
2005099926.tif 000010
【図９】
2005099926.tif 000011
【図１０】
2005099926.tif 000012