説明

ICチップ、データ処理方法、データ処理プログラム及びICカード等

【課題】より多くの処理を迅速に実行することができるICチップ及びデータ処理方法等を提供する。
【解決手段】ICチップ1に含まれるCPU6は、低消費電力状態へ移行するまでの残り時間内に、完了可能な一又は複数の前記処理を実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、より多くの処理を迅速に実行することができるICチップ及びデータ処理方法等の技術分野に関する。
【背景技術】
【0002】
外部機器と通信を行うICカード、例えば、携帯電話機に組み込まれたICカード(UIMカード)は、所定の規格(ISO7816等)に定められた電気信号及び伝送プロトコルに準じて、前記携帯電話機との間で通信を行っている。
【0003】
近年、かかる通信で取扱われるデータの大容量化に伴い、UIMカードにおいて、USB規格の通信をサポートする動きがある(例えば、特許文献1)。
【0004】
USB規格の通信では、UIMカード全体の消費電力を抑えるために、低消費電力状態(サスペンド)へ移行させるモードを備えるよう定義されている。
【0005】
より詳しくは、UIMカードの通信バスに、何らの信号が入出力されなくなった時(無信号状態)から3ms経過した後、さらに無信号状態が7ms経過した場合(無信号状態から10ms経過後)に、上記低消費電力状態へ移行するように定義されている(例えば、非特許文献1)。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2004−139207号公報
【非特許文献】
【0007】
【非特許文献1】Universal Bus Specification Revision 2.0(April 27 2000)
【発明の概要】
【発明が解決しようとする課題】
【0008】
しかしながら、上記USB規格の通信では、低消費電力状態へ移行する期間については定義されているが、当該期間におけるUIMカードの具体的な動作については何ら規定されていない。
【0009】
従って、上記低消費電力状態へ移行する期間において、UIMカードに対して処理命令が新たに入力された場合、かかる入力を受けたICカードが行う動作内容は、UIMカード開発者の設定に委ねられていた。
【0010】
例えば、上記処理命令の一例として、不揮発性メモリへの書込みがある。不揮発性メモリへの書込み処理処理は、UIMカードにおいて多くの時間を消費するものである。
【0011】
そして、かかる処理が上記低消費電力状態へ移行する期間において入力された場合、当該処理を受け入れて実行すると設定された場合には、正常に書込みが行えず以降の正常な動作の妨げとなってしまう。
【0012】
一方、かかる処理が上記低消費電力へ移行する期間において入力された場合、当該処理を受け入れず、上記低消費電力へ移行する期間の経過を待って、当該低消費電力状態へ移行すると設定された場合には、上記処理を停止するタイミングを必要以上に早めてしまう虞がある。
【0013】
そこで、本発明は条規格問題点に鑑みてなされたものであり、その目的の一例は、多くの処理を迅速かつ確実に実行することができるICチップ及びデータ処理方法等を提供することである。
【課題を解決するための手段】
【0014】
上記の課題を解決するために、請求項1に記載のICチップは、外部から入力される信号に基づいて複数の処理を実行し、前記処理の種類と、前記処理の完了に必要な処理時間とを対応付けて記憶する記憶部を有するICチップであって、前記信号の入力状態を監視する監視手段と、前記信号の入力がない無信号状態から前記無信号状態が継続する経過時間を計時する計時手段と、前記経過時間が第1の閾値を超えたと計時された場合に、前記ICチップを、低消費電力状態へ移行させる準備を行う期間である低消費電力準備期間へ移行する準備期間移行手段と、前記計時手段によって、前記低消費電力準備期間へ移行してから前記経過時間が第2の閾値を超えたと計時された場合に、前記ICチップを低消費電力状態へ移行させる低消費電力移行手段と、前記低消費電力準備期間に、実行する順番が予め設定された複数の前記処理を実行する指示を示す信号が入力された場合に、前記信号が入力された時点から前記低消費電力状態へ移行するまでの残り時間内に、完了可能な一又は複数の前記処理を実行する実行手段と、を備える。
【0015】
この発明によれば、ICチップは、信号の入力がない無信号状態から前記無信号状態が継続する経過時間が第1の閾値を超えた場合に、低消費電力準備期間へ移行させ、前記経過時間が第2の閾値を超えた場合に、低消費電力状態へ移行させ、前記低消費電力準備期間に、実行する順番が予め設定された複数の前記処理を実行する指示を示す信号が入力された場合に、前記信号が入力された時点から前記低消費電力状態へ移行するまでの残り時間内に、完了可能な一又は複数の前記処理を実行することができる。
【0016】
従って、ICチップは、低消費電力準備期間内に完了可能な一又は複数の処理を実行するため、多くの処理を迅速かつ確実に実行することができる。
【0017】
請求項2に記載のICチップは、請求項1に記載のICチップにおいて、前記実行手段は、前記残り時間が、前記順番に従って実行すべき複数の処理として設定された当該処理に対応付けられた各処理時間のうち最大の処理時間よりも大きい場合に、前記順番に従って一又は複数の前記処理を実行する。
【0018】
従って、ICチップは、記憶された処理時間のうち一の前記処理時間と前記残り時間を比較し、実行すべき処理を決定するため、処理負担が非常に軽く、容易に実装することができる。また、簡便な構成で、多くの処理を迅速かつ確実に実行することができる。
【0019】
請求項3に記載のICチップは、請求項1に記載のICチップにおいて、前記実行手段は、前記残り時間が、前記順番に従って次に実行すべき処理として設定された当該処理に対応付けられた処理時間よりも大きい場合に、当該処理を実行する。
【0020】
従って、ICチップは、記憶された処理時間のうち、前記順番に従って次に実行すべき処理に対応付けられた処理時間と残り時間を比較し、実行すべき処理を決定するため、より多くの処理を迅速かつ確実に実行することができる。
【0021】
請求項4に記載のICチップは、請求項1に記載のICチップにおいて、前記実行手段は、前記残り時間が、前記順番に従って次に実行すべき処理として設定された当該処理に対応付けられた処理時間よりも小さい場合に、当該順番に従って実行すべき処理として設定された他の処理に対応付けられた処理時間のうち、当該残り時間よりも小さい処理時間を選択し、当該処理時間が対応付けられた処理を実行する。
【0022】
従って、ICチップは、残り時間内に完了することができる処理を全て実行するため、さらに多くの処理を迅速かつ確実に、実行することができる。
【0023】
請求項5に記載のICチップは、請求項1乃至4の何れか一項に記載のICチップであって、前記ICチップは、USB通信規格に準拠したデータ通信に対応する。
【0024】
請求項6に記載のICカードは、請求項1乃至5の何れか一項に記載のICチップと、ICカード基体と、を備える。
【0025】
請求項7に記載のデータ処理方法は、外部から入力される信号に基づいて複数の処理を実行し、前記処理の種類と、前記処理の完了に必要な処理時間とを対応付けて記憶する記憶部を有するICチップにおけるデータ処理方法であって、前記信号の入力状態を監視する監視工程と、前記信号の入力がない無信号状態から前記無信号状態が継続する経過時間を計時する計時工程と、前記経過時間が第1の閾値を超えたと計時された場合に、前記ICチップを、低消費電力状態へ移行させる準備を行う期間である低消費電力準備期間へ移行する準備期間移行工程と、前記計時手段によって、前記低消費電力準備期間へ移行してから前記経過時間が第2の閾値を超えたと計時された場合に、前記ICチップを低消費電力状態へ移行させる低消費電力移行工程と、前記低消費電力準備期間に、実行する順番が予め設定された複数の前記処理を実行する指示を示す信号が入力された場合に、前記信号が入力された時点から前記低消費電力状態へ移行するまでの残り時間内に、完了可能な一又は複数の前記処理を実行する実行工程と、を有する。
【0026】
請求項8に記載のデータ処理プログラムは、外部から入力される信号に基づいて複数の処理を実行し、前記処理の種類と、前記処理の完了に必要な処理時間とを対応付けて記憶する記憶部を有するICチップが有するコンピュータを、前記信号の入力状態を監視する監視手段、前記信号の入力がない無信号状態から前記無信号状態が継続する経過時間を計時する計時手段、前記経過時間が第1の閾値を超えたと計時された場合に、前記ICチップを、低消費電力状態へ移行させる準備を行う期間である低消費電力準備期間へ移行する準備期間移行手段、前記計時手段によって、前記低消費電力準備期間へ移行してから前記経過時間が第2の閾値を超えたと計時された場合に、前記ICチップを低消費電力状態へ移行させる低消費電力移行手段、前記低消費電力準備期間に、実行する順番が予め設定された複数の前記処理を実行する指示を示す信号が入力された場合に、前記信号が入力された時点から前記低消費電力状態へ移行するまでの残り時間内に、完了可能な一又は複数の前記処理を実行する実行手段、として機能させる。
【発明の効果】
【0027】
以上のように、本発明によれば、ICチップは、信号の入力がない無信号状態から前記無信号状態が継続する経過時間が第1の閾値を超えた場合に、低消費電力準備期間へ移行させ、前記経過時間が第2の閾値を超えた場合に、低消費電力状態へ移行させ、前記低消費電力準備期間に、実行する順番が予め設定された複数の前記処理を実行する指示を示す信号が入力された場合に、前記信号が入力された時点から前記低消費電力状態へ移行するまでの残り時間内に、完了可能な一又は複数の前記処理を実行するため、多くの処理を迅速かつ確実に実行することができる。
【図面の簡単な説明】
【0028】
【図1】本願の実施形態にかかるICカード8の構成及び機能概要を示すブロック図である。
【図2】CPU6の動作概要を示す図である。
【図3】前記テーブルと上記完了可能か否かの判断の一例である処理フロー(処理例)の概要を示す図である。
【図4】実施形態(I)におけるCPU6の動作を示すフローチャートである。
【図5】実施形態(II)におけるCPU6の動作を示すフローチャートである。
【図6】実施形態(III)におけるCPU6の動作を示すフローチャートである。
【発明を実施するための形態】
【0029】
以下、本願の最良の実施形態を添付図面に基づいて説明する。なお、以下に説明する実施の形態は、外部装置との間でデータの送受信及び動作の実行等を実現するICカードに対して本願を適用した場合の実施形態である。
【0030】
まず、本願の実施形態にかかる、外部装置との間でデータの送受信及び動作の実行等を実現するICカードの構成及び機能概要について、図1を用いて説明する。
【0031】
図1は、本願の実施形態にかかるICカードの構成及び機能概要を示すブロック図である。
【0032】
本実施例にかかるICカードは、外部としての図示しない外部装置から、図示しないリーダライタ装置を介して、入力される動作に必要な電力及び信号等に応じて、当該信号が示す処理(例えば、データ読出処理等)を実行するようになっている。
【0033】
具体的には、図1に示すように、ICカード8は、ICチップ1をICカード基体7に備えて構成されている。そして、ICチップ1は、インターフェース2、ROM(Read Only Memory)3、RAM(Random Access Memory)4、EEPROM5、CPU(Central Processing Unit)6等を備えて構成されている。
【0034】
インターフェース2は、上述したデータ等を送受信するための入出力ポート(port)であり、CPU6は、インターフェース2を介して上記外部装置等と交信する。
【0035】
より具体的には、インターフェース2は、ISO/IEC7816等によって定められた、C1〜C8の8個の端子を有する。
【0036】
かかるISO/IEC7816では、C1は電源端子VCC、C2はリセット端子RST、C3はクロック端子CLK、C5はグランド端子GND、C6はプログラム用可変電圧供給端子VPP、C7は入出力端子I/O用として用いられるように定められている。
【0037】
さらに、本実施形態のICカード8は、外部との大容量かつ高速通信を可能とすべく、USBの通信(伝送)プロトコルをサポート(USB通信規格に準拠)している。
【0038】
かかるUSB通信の規格は、公知技術であるため詳しい説明は省略するが、Universal Bus Specification Revision 2.0(April 27 2000)によって標準化されており、USB通信規格に準拠したICカードでは、前記規格を遵守するようになっている。
【0039】
そして、USB通信規格に準拠したICカード8では、かかるインターフェース2の端子のうち、C4をIC_DPと、C8をIC_DMとして用いて、USBのプロトコルに基づいたデータの送受信が可能となっている。
【0040】
さらに、上記USB通信規格では、ICカード8全体の消費電力を抑えるために、低消費電力状態(サスペンド)へ移行させるモード(サスペンドモード)を備えるよう定義されている。
【0041】
具体的には、インターフェース2に、何らの信号が入出力されなくなった時(無信号状態)から3ms経過した後、さらに無信号状態が7ms経過した場合(無信号状態から10ms経過後)に、ICカード8を、上記低消費電力状態へ移行させるように定義されている。
【0042】
一方、上記USB規格の通信では、低消費電力状態へ移行する期間については定義されているが、当該期間におけるICカード8の具体的な動作については何ら規定されていない。
【0043】
ROM3には、CPU6によって実行されるべきプログラムが記憶されており、CPU6は、このプログラムに基づいてICチップ1を統括的に制御すると共に、上記コマンドが示す動作を実行させるようになっている。
【0044】
RAM4は、CPU6がICチップ1を統括的に制御するために作業領域として使用するメモリである。
【0045】
本願の記憶部の一例としてのEEPROM5は、不揮発性半導体メモリの一種であり、記憶領域に記憶されているデータを消去し、何度でも再記憶ができるPROM(Programmable Rom)である。
【0046】
さらに、EEPROM5には、上記処理の種類(例えば、データの記憶、読出し等の種類)と、当該処理の完了に必要な処理時間とが対応付けて記憶されたテーブルが予め記憶されている。なお、テーブルの詳細については後述するが、EEPROM5のみならず、ROM3に記憶するようにしてもよい。
【0047】
そして、上記テーブルの内容は、追加的に変更及び更新することが可能となっている。
【0048】
CPU6は、上述したようにプログラムに基づいてICチップ1全体の動作を統括的に制御するとともに、本願の監視手段、計時手段、準備期間移行手段、低消費電力移行手段及び実行手段として機能する。
【0049】
次に、図2〜6を用いて、CPU6の動作を説明する。
【0050】
本実施形態におけるCPU6は、信号の入力がない無信号状態から前記無信号状態が継続する経過時間が第1の閾値の一例としての3msを超えた場合に、後述する低消費電力準備期間へ移行させ、前記経過時間が第2の閾値の一例としての7msを超えた場合に、低消費電力状態へ移行するようになっている。
【0051】
そして、CPU6は、上記低消費電力準備期間に、実行する順番が予め設定された複数の前記処理を実行する指示を示す信号が入力された場合に、前記信号が入力された時点から前記低消費電力状態へ移行するまでの残り時間内に、完了可能な一又は複数の前記処理を実行するようになっている。
【0052】
以下、上記動作を、詳細に説明する。
【0053】
まず、本願のCPU6の動作概要について図2を用いて説明する。
【0054】
図2は、本願のCPU6の動作概要について示す図である。
【0055】
上述したように、CPU6は、各インターフェース2の端子の信号の入力状態を監視しており、図2に示すグラフには、CPU6によって監視された信号の状態が示されている。
【0056】
具体的に、上記グラフでは、IC_DP(C4)の信号の状態はHigh状態、IC_DM(C8)の信号の状態はLow状態であることが、それぞれ示されている。
【0057】
ここで、上述したUSB通信規格では、上述した無信号状態の詳細について定義されている。具体的には、無信号状態とは、「IC_DPの信号の状態がHigh状態、IC_DM(C8)の信号の状態がLow状態である状態を示す」ことと定義されている。
【0058】
上記定義に鑑みると、図2に示す信号の入力状態は、無信号状態であることが把握される。
【0059】
CPU6は、上記無信号状態から3ms経過する前までに(図2(A))、何らかの処理を実行する指示を示す信号が入力された場合には、かかる信号が示す処理を実行するようになっている。
【0060】
そして、従来では、上記3msを経過後、無信号状態から10ms経過するまで(低消費電力状態へ移行するまで)(図2(A)〜(C)の期間)のCPU6の動作については、何ら定義されていなかった。
【0061】
本実施形態では、CPU6は、例えばタイマー等によって、上記無信号状態が継続する時間を計時している。
【0062】
また、本実施形態では、上記3msを経過後、上記低消費電力状態へ移行するまで(前記3ms経過後、さらに7ms経過するまでの)の間を、低消費電力準備期間(図2(A)〜(C)の期間)と定義している。
【0063】
そして、上記低消費電力準備期間に、実行する順番が予め設定された複数の前記処理を実行する指示を示す信号が入力された場合に、CPU6は、上記信号が入力された時点から前記低消費電力状態へ移行するまでの残り時間内(図2(B)〜(C)の期間)に、完了可能な一又は複数の前記処理を実行するようになっている。
【0064】
具体的に、CPU6は、EPPROM5に記憶されたテーブルを参照して、前記信号によって実行する指示が示された処理の完了に必要な処理時間と前記残り時間を比較する。
【0065】
ここで、上記CPU6が行う上記完了可能か否かの判断の一例について、図3を用いて詳細に説明する。
【0066】
図3は、前記テーブルと上記完了可能か否かの判断の一例である処理フロー(処理例)の概要を示す図である。
【0067】
図3において、表Aは上記テーブルを、表Bは上記完了可能か否かの判断の一例である処理フロー(処理例)をそれぞれ示している。
【0068】
表Aには、上記処理の種類として処理Aと、処理Aの完了に必要な時間(処理時間)として3msが、それぞれ対応付けられ、テーブルとして記憶されることが示されている。同様に、処理Bと処理Bの処理時間として3msが、処理Cと処理Cの処理時間として5msが、処理Dと処理Dの処理時間として4msが、処理Eと処理Eの処理時間として1msが、それぞれ対応付けられて記憶されている。
【0069】
表Bには、低消費電力準備期間に移行した直後(図2(A))に、上記完了可能か否かの判断の一例である処理フローが示されている。
【0070】
表Bが示す上記完了可能か否かの判断の一例である処理フローにおいて、処理順及び処理内容には、入力された実行する順番が予め設定された複数の前記処理を実行する指示を示す信号に応じて、実行されるべき処理が、早いものから順に列挙されされている。
【0071】
具体的には、処理A、処理E、処理C、処理B、次いで、処理Dの順番で実行するように設定された前記信号が入力された結果、表Bでは、かかる順番に応じて処理を実行する順番が早いもの(処理A)から順に列挙されている。
【0072】
経過時間には、上記信号が入力された時点(図2(A))から、かかる順番に応じて処理を実行した場合の経過時間が示されている。換言すれば、かかる経過時間は、完了した処理の処理時間の累積和を示している。
【0073】
表Bでは、上記信号が入力された時点を基準に、上記順番に従って処理Aが完了すると経過時間は3ms、処理Eが完了すると経過時間は4ms、処理Cが完了すると経過時間は9ms、処理Bが完了すると経過時間は12ms、処理Dが完了すると経過時間は16msであることをそれぞれ示されている。
【0074】
残り時間には、上記順番に応じて処理を完了後、上記低消費電力状態へ移行するまでの期間が示されている。
【0075】
表Bでは、処理Aを完了後は上記低消費電力状態へ移行するまでの期間が4msであることが、処理Eを完了後は上記低消費電力状態へ移行するまでの期間が3msであることが、それぞれ示されている。
【0076】
また、CPU6が処理Cを完了すると、上記低消費電力状態へ移行するまでの期間を既に超えてしまう。従って、残り時間には、当該超えた時間である2msが、−2msとして示されるようになっている。
【0077】
同様に、CPU6が処理Bを完了すると上記低消費電力状態へ移行してから5msが経過するため−5msが、CPU6が処理Bを完了すると上記低消費電力状態へ移行してから9msが経過するため−9msがそれぞれ示されるようになっている。
【0078】
CPU6は、上述したように前記信号が入力された時点から前記低消費電力状態へ移行するまでの残り時間内に、完了可能な一又は複数の前記処理を実行ようになっており、かかる実行の一例として、例えば、処理Aのみを実行する、又は、処理A及び処理Eのみを実行する等、種々の実施形態が想定される。
【0079】
以下、種々の実行形態の一例について詳細に説明する。
【0080】
(1)実施形態(I)
実施形態(I)では、CPU6は、低消費電力状態へ移行するまでの残り時間が、順番に従って実行すべき複数の処理として設定された当該処理に対応付けられた各処理時間のうち最大の処理時間よりも大きい場合に、前記順番に従って一又は複数の前記処理を実行するようになっている。
【0081】
かかる実施形態について、図3及び図4を用いて詳細に説明する。
【0082】
図4は、実施形態(I)におけるCPU6の動作を示すフローチャートである。
【0083】
まず、CPU6は、完了した処理がある場合には、上記タイマーをリセットし(ステップS1)、各インターフェース2の端子の信号の入力状態を監視する(ステップS2)。
【0084】
そして、処理を実行する指示を示す信号の入力があった場合には(ステップS2:YES)、CPU6は、かかる処理を実行する。
【0085】
一方、CPU6が、信号の入力がない状態(即ち、無信号状態)を監視した場合であって(ステップS2:NO)、かかる無信号状態が3ms経過したことを(例えば、上記タイマーによって)計時した場合には(ステップS3:YES)、CPU6は、図3表Aに示すテーブルを参照して、低消費電力状態へ移行するまでの残り時間が、処理の完了に必要な処理時間のうち最大の時間(最大処理時間。図3表Aでは処理Cの処理時間の5msが最大処理時間となる。)よりも大きいか否かを判断する(ステップS4)。
【0086】
そして、CPU6が、上記残り時間が上記最大時間よりも大きいと判断した場合であって(ステップS4:YES)、実行する順番が予め設定された複数の前記処理を実行する指示を示す信号が入力された場合には(ステップS5:YES)、CPU6は、かかる処理を実行し(ステップS6)、ステップS4へ移行するようになっている。
【0087】
一方、CPU6が、上記残り時間が上記最大時間よりも小さいと判断した場合には(ステップS4:NO)、CPU6は、低消費電力状態へ移行する。
【0088】
実施形態(I)では、CPU6は、「低消費電力状態へ移行するまでの残り時間」とテーブルによって記憶される「最大処理時間」のみを比較して、低消費電力状態へ移行するようになっているため、CPU6が行う処理が軽く、かつ、容易にICチップ1へ実装することができる。
【0089】
(2)実施形態(II)
実施形態(II)では、CPU6は、前記低消費電力状態へ移行するまでの残り時間が、前記順番に従って次に実行すべき処理として設定された当該処理に対応付けられた処理時間よりも大きい場合に、当該処理を実行するようになっている。
【0090】
かかる実施形態について、図3及び図5を用いて詳細に説明する。
【0091】
図5は、実施形態(II)におけるCPU6の動作を示すフローチャートである。
【0092】
まず、CPU6は、完了した処理がある場合には、上記タイマーをリセットし(ステップS11)、各インターフェース2の端子の信号の入力状態を監視する(ステップS12)。
【0093】
そして、処理を実行する指示を示す信号の入力があった場合には(ステップS12:YES)、CPU6は、かかる処理を実行する。
【0094】
一方、CPU6が、上記無信号状態を監視した場合であって(ステップS12:NO)、かかる無信号状態が3ms経過したことを計時した場合には(ステップS13:YES)、CPU6は、低消費電力準備期間へ移行する。
【0095】
そして、上記低消費電力準備期間において、実行する順番が予め設定された複数の前記処理を実行する指示を示す信号が入力された場合には(ステップS14:YES)、CPU6は、低消費電力状態へ移行するまでの残り時間が、上記順番に従って次に実行すべき処理として設定された当該処理に対応付けられた処理時間よりも大きいか否かを判断する(ステップS15)。
【0096】
具体的には、例えば、図3表Bに示す信号が入力された場合には、まず、CPU6は、上記残り時間が、一番初めに実行すべき処理である処理Aの処理時間よりも大きいか否かを判断する。
【0097】
そして、CPU6が、上記処理時間よりも上記残り時間が大きいと判断した場合には(ステップS15:YES)、CPU6は、かかる処理(図3表Bの場合にあっては処理A)を実行する(ステップS16)。
【0098】
そして、CPU6は、さらに実行すべき処理があるか否かを判断するようになっている(ステップS14へ移行)。
【0099】
具体的には、上述した図3表Bに示す信号が入力された場合では、処理Aの実行後の残り時間は、4msとなる。従って、CPU6は、当該残り時間が、次に実行すべき処理である処理Eの処理時間よりも大きいか否かを判断する。
【0100】
図3表Bの場合では、かかる処理Eの処理時間は1msであるため、上記残り時間の方が大きいことが示されている。
【0101】
従って、CPU6は、処理Eを実行し、更にステップS14へ移行するようになっている。
【0102】
一方、上記信号が入力されなかった場合には(ステップS14:NO)、CPU6は、上記残り時間が0となるか否か(換言すれば、上記7msが経過したか否か)を判断する(ステップS17)。
【0103】
そして、CPU6が、当該残り時間が0となったと判断した場合には(ステップS17:YES)、CPU6は、低消費電力状態へ移行するようになっている。
【0104】
また、CPU6が、上記残り時間が小さいと判断した場合にも(ステップS15:NO)、CPU6は、低消費電力状態へ移行する。
【0105】
実施形態(II)では、CPU6は、「低消費電力状態へ移行するまでの残り時間」と、前記順番に従って次に実行すべき処理として設定された当該処理に対応付けられた処理時間とを比較し、当該残り時間内に次に実行すべき処理が実行可能である限り、追加的に処理を実行するため、より多くの処理を実行することができる。
【0106】
(3)実施形態(III)
実施形態(III)では、CPU6は、低消費電力状態へ移行するまでの残り時間が、前記順番に従って次に実行すべき処理として設定された当該処理に対応付けられた処理時間よりも小さい場合に、当該順番に従って実行すべき処理として設定された他の処理に対応付けられた処理時間のうち、当該残り時間よりも小さい処理時間を選択し、当該処理時間が対応付けられた処理を実行するようになっている。
【0107】
かかる実施形態について、図3及び図6を用いて詳細に説明する。
【0108】
図6は、実施形態(III)におけるCPU6の動作を示すフローチャートである。
【0109】
まず、CPU6は、完了した処理がある場合には、上記タイマーをリセットし(ステップS21)、各インターフェース2の端子の信号の入力状態を監視する(ステップS22)。
【0110】
そして、処理を実行する指示を示す信号の入力があった場合には(ステップS22:YES)、CPU6は、かかる処理を実行する。
【0111】
一方、CPU6が、上記無信号状態を監視した場合であって(ステップS22:NO)、かかる無信号状態が3ms経過したことを計時した場合には(ステップS23:YES)、CPU6は、低消費電力準備期間へ移行する。
【0112】
そして、上記低消費電力準備期間において、実行する順番が予め設定された複数の前記処理を実行する指示を示す信号が入力された場合には(ステップS24:YES)、CPU6は、低消費電力状態へ移行するまでの残り時間が、次に実行すべき処理の処理時間よりも大きいか否かを判断する(ステップS25)。
【0113】
具体的には、例えば、図3表Bに示す信号が入力された場合には、まず、CPU6は、上記残り時間が、一番初めに実行すべき処理である処理Aの処理時間よりも大きいか否かを判断する。
【0114】
そして、CPU6が、上記処理時間よりも上記残り時間の方が大きいと判断した場合には(ステップS25:YES)、CPU6は、かかる処理(図3表Bの場合にあっては処理A)を実行する(ステップS26)。
【0115】
そして、CPU6は、さらに実行すべき処理があるか否かを判断するようになっている(ステップS24へ移行)。
【0116】
一方、CPU6が、上記処理時間よりも上記残り時間の方が小さいと判断した場合には(ステップS25:NO)、CPU6は、前記順番に従って実行すべき処理として設定された他の処理に対応付けられた処理時間のうち、上記残り時間よりも小さい処理時間で完了することができる処理があるか否かを判断する(ステップS27)。
【0117】
そして、CPU6が、上記完了できる処理が存在すると判断した場合には(ステップS27:YES)、CPU6は、当該処理を選択し、実行するようになっている(ステップS26)。
【0118】
具体的には、例えば、図3表Bに示す信号が入力された場合であって、処理A及び処理Eまで完了していた場合を想定する。
【0119】
かかる事案では、次に実行すべき処理は処理Cであるが、前記処理Cの処理時間は5msであり、現在の残り時間(3ms)よりも大きい。従って、CPU6は、前記残り時間である3ms以内で完了できる処理である処理Cを選択し、実行するようになっている。
【0120】
そして、CPU6は、ステップS24へ移行する。
【0121】
一方、CPU6が、上記完了できる処理は存在しないと判断した場合には(ステップS27:NO)、CPU6は、低消費電力状態へ移行するようになっている。
【0122】
また、実行する順番が予め設定された複数の前記処理を実行する指示を示す信号が入力されなかった場合には(ステップS24:NO)、CPU6は、上記残り時間が0となるか否かを判断する(ステップS28)。
【0123】
そして、CPU6は、当該残り時間が0となったと判断した場合には(ステップ28:YES)、CPU6は、低消費電力状態へ移行するようになっている。
【0124】
実施形態(III)では、CPU6は、他の実行すべき処理のうち、前記残り時間内に処理を完了することができる一又は複数の前記処理を選択し実行するため、上記残り時間内に可能な限り多くの処理を実行することができる。
【0125】
以上説明したように、本実施形態におけるCPU6は、上記低消費電力準備期間に、実行する順番が予め設定された複数の前記処理を実行する指示を示す信号が入力された場合に、前記信号が入力された時点から前記低消費電力状態へ移行するまでの残り時間内に、完了可能な一又は複数の前記処理を実行する。
【0126】
従って、CPU6は、低消費電力準備期間内に完了可能な一又は複数の処理を実行するため、多くの処理を迅速かつ確実に実行することができる。
【0127】
また、CPU6は、上記残り時間が、上記順番に従って実行すべき複数の処理として設定された当該処理に対応付けられた各処理時間のうち最大の処理時間よりも大きい場合に、当該順番に従って一又は複数の前記処理を実行する。
【0128】
従って、CPU6が行う処理が軽く、かつ、容易にICチップ1へ実装することができる。また、簡便な構成で、多くの処理を迅速かつ確実に実行することができる。
【0129】
また、CPU6は、上記残り時間が、前記順番に従って次に実行すべき処理として設定された当該処理に対応付けられた処理時間よりも大きい場合に、当該処理を実行する。
【0130】
従って、残り時間内に次に実行すべき処理が実行可能である限り、追加的に処理を実行するため、より多くの処理を実行することができる。
【0131】
また、CPU6は、上記残り時間が、上記順番に従って次に実行すべき処理として設定された当該処理に対応付けられた処理時間よりも小さい場合に、当該順番に従って実行すべき処理として設定された他の処理に対応付けられた処理時間のうち、当該残り時間よりも小さい処理時間を選択し、当該処理時間が対応付けられた処理を実行する。
【0132】
従って、上記残り時間内に可能な限り多くの処理を実行することができる。
【0133】
また、本実施形態では、ICチップ1を、USB通信規格に準拠したデータ通信に対応させるべく、上記第1の閾値を3ms、上記第2の閾値を7msとしたが、これに限定されるものではなく、前記第1の閾値及び第2の閾値は任意に選択及び設定することが可能である。
【0134】
なお、上記実施形態においては、本願のICチップ1を備えたICカード8に対して適用した場合の例を示したが、その他にも例えば、PDA、ミニノート型パーソナルコンピュータ又はノート型パーソナルコンピュータ等の携帯型情報処理装置、パーソナルコンピュータ、及びその他の車載用、家庭用の電子機器に対して適用可能である。
【符号の説明】
【0135】
1 ICチップ
2 インターフェース
3 ROM
4 RAM
5 EEPROM
6 CPU
7 カード基体
8 ICカード

【特許請求の範囲】
【請求項1】
外部から入力される信号に基づいて複数の処理を実行し、
前記処理の種類と、前記処理の完了に必要な処理時間とを対応付けて記憶する記憶部を有するICチップであって、
前記信号の入力状態を監視する監視手段と、
前記信号の入力がない無信号状態から前記無信号状態が継続する経過時間を計時する計時手段と、
前記経過時間が第1の閾値を超えたと計時された場合に、前記ICチップを、低消費電力状態へ移行させる準備を行う期間である低消費電力準備期間へ移行する準備期間移行手段と、
前記計時手段によって、前記低消費電力準備期間へ移行してから前記経過時間が第2の閾値を超えたと計時された場合に、前記ICチップを低消費電力状態へ移行させる低消費電力移行手段と、
前記低消費電力準備期間に、実行する順番が予め設定された複数の前記処理を実行する指示を示す信号が入力された場合に、前記信号が入力された時点から前記低消費電力状態へ移行するまでの残り時間内に、完了可能な一又は複数の前記処理を実行する実行手段と、
を備えることを特徴とするICチップ。
【請求項2】
請求項1に記載のICチップにおいて、
前記実行手段は、前記残り時間が、前記順番に従って実行すべき複数の処理として設定された当該処理に対応付けられた各処理時間のうち最大の処理時間よりも大きい場合に、前記順番に従って一又は複数の前記処理を実行することを特徴とするICチップ。
【請求項3】
請求項1に記載のICチップにおいて、
前記実行手段は、前記残り時間が、前記順番に従って次に実行すべき処理として設定された当該処理に対応付けられた処理時間よりも大きい場合に、当該処理を実行することを特徴とするICチップ。
【請求項4】
請求項1に記載のICチップにおいて、
前記実行手段は、前記残り時間が、前記順番に従って次に実行すべき処理として設定された当該処理に対応付けられた処理時間よりも小さい場合に、当該順番に従って実行すべき処理として設定された他の処理に対応付けられた処理時間のうち、前記残り時間よりも小さい処理時間を選択し、当該処理時間が対応付けられた処理を実行することを特徴とするICチップ。
【請求項5】
請求項1乃至4の何れか一項に記載のICチップであって、
前記ICチップは、USB通信規格に準拠したデータ通信に対応することを特徴とするICチップ。
【請求項6】
請求項1乃至5の何れか一項に記載のICチップと、ICカード基体と、を備えることを特徴とするICカード。
【請求項7】
外部から入力される信号に基づいて複数の処理を実行し、
前記処理の種類と、前記処理の完了に必要な処理時間とを対応付けて記憶する記憶部を有するICチップにおけるデータ処理方法であって、
前記信号の入力状態を監視する監視工程と、
前記信号の入力がない無信号状態から前記無信号状態が継続する経過時間を計時する計時工程と、
前記経過時間が第1の閾値を超えたと計時された場合に、前記ICチップを、低消費電力状態へ移行させる準備を行う期間である低消費電力準備期間へ移行する準備期間移行工程と、
前記計時手段によって、前記低消費電力準備期間へ移行してから前記経過時間が第2の閾値を超えたと計時された場合に、前記ICチップを低消費電力状態へ移行させる低消費電力移行工程と、
前記低消費電力準備期間に、実行する順番が予め設定された複数の前記処理を実行する指示を示す信号が入力された場合に、前記信号が入力された時点から前記低消費電力状態へ移行するまでの残り時間内に、完了可能な一又は複数の前記処理を実行する実行工程と、
を有することを特徴とするデータ処理方法。
【請求項8】
外部から入力される信号に基づいて複数の処理を実行し、
前記処理の種類と、前記処理の完了に必要な処理時間とを対応付けて記憶する記憶部を有するICチップが有するコンピュータを、
前記信号の入力状態を監視する監視手段、
前記信号の入力がない無信号状態から前記無信号状態が継続する経過時間を計時する計時手段、
前記経過時間が第1の閾値を超えたと計時された場合に、前記ICチップを、低消費電力状態へ移行させる準備を行う期間である低消費電力準備期間へ移行する準備期間移行手段、
前記計時手段によって、前記低消費電力準備期間へ移行してから前記経過時間が第2の閾値を超えたと計時された場合に、前記ICチップを低消費電力状態へ移行させる低消費電力移行手段、
前記低消費電力準備期間に、実行する順番が予め設定された複数の前記処理を実行する指示を示す信号が入力された場合に、前記信号が入力された時点から前記低消費電力状態へ移行するまでの残り時間内に、完了可能な一又は複数の前記処理を実行する実行手段、
として機能させることを特徴とするデータ処理プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate