(57)【要約】【課題】この発明は、ＩＣカードのプログラム・メモリに従来よりも大量のプログラムを搭載することができる。【解決手段】この発明は、ＩＣカード上の限られたプログラム・メモリ（ＲＯＭ）にプログラムを格納する際に、一定の条件を満たす一部のプログラムをデータ圧縮した上で格納するようにしたものである。【選択図】　　図３
2004038285.tif 000002
【特許請求の範囲】
【請求項１】
マスクＲＯＭで構成されるプログラムメモリと、揮発性メモリで構成される作業用メモリとを有する携帯可能電子装置において、
上記プログラムメモリに解凍プログラムと圧縮されている少なくとも１つの個別アプリケーションプログラムとを記憶する記憶手段と、
外部から供給される命令が個別アプリケーションプログラムの実行を判断する判断手段と、
この判断手段により所望の個別アプリケーションプログラムの実行を判断した際、対応する圧縮されている個別アプリケーションプログラムをプログラムメモリから読出す読出手段と、
この読出手段により読み出された圧縮されている個別アプリケーションプログラムを上記プログラムメモリに記憶されている解凍プログラムにより解凍する解凍手段と、
この解凍手段により解凍した個別アプリケーションプログラムを上記作業用メモリに展開する展開手段と、
この展開手段により上記作業用メモリに展開された個別アプリケーションプログラムによる処理を実行する実行手段と、
を具備したことを特徴とする携帯可能電子装置。
【請求項２】
マスクＲＯＭで構成されるプログラムメモリと、揮発性メモリで構成される作業用メモリとを有する携帯可能電子装置の処理方法において、
上記プログラムメモリに解凍プログラムと圧縮されている少なくとも１つの個別アプリケーションプログラムとを記憶し、
外部から供給される命令が個別アプリケーションプログラムの実行を判断し、
この判断により所望の個別アプリケーションプログラムの実行を判断した際、対応する圧縮されている個別アプリケーションプログラムをプログラムメモリから読出し、
この読み出された圧縮されている個別アプリケーションプログラムを上記プログラムメモリに記憶されている解凍プログラムにより解凍し、
この解凍した個別アプリケーションプログラムを上記作業用メモリに展開し、
この展開された個別アプリケーションプログラムによる処理を実行する
ことを特徴とする携帯可能電子装置の処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、一般にＩＣカードと称される携帯可能な電子媒体をより高性能化・多機能化する技術に関する。
【０００２】
【従来の技術】
ＩＣカードは、通常、厚さ１ｍｍ以下のプラスチック・カードにＣＰＵやメモリを搭載した半導体チップを埋め込んだ、可搬性に優れた電子媒体である。
しかしプラスチック・カードは携帯時や使用時に曲げられたり落下等の衝撃を加えられる可能性が大きいために、内部に埋め込まれる半導体チップは物理的な破壊を防止するため通常一辺が５ｍｍ以下程度のサイズものが使用される。
【０００３】
そのためＩＣカードに埋め込まれる半導体チップにはプログラムやデータを格納するためのメモリ容量を十分に確保できないという問題が存在する。
半導体チップは製造技術の進歩により、同じ面積のチップ上に実装できるメモリの容量が次第に増えつつあるが、一方で近年ＩＣカードは様々な分野で急速に普及しつつあるためＩＣカードにより多くの機能、より複雑な機能を搭載することが求められ、これらがＩＣカードに搭載されるプログラムの容量の増加要因となっており、プログラム・メモリ上にプログラムを効率よく搭載する方法が強く求められている。
【０００４】
すなわち、ＩＣカードに埋め込まれる半導体チップは、その物理的強度の点からチップの寸法に大きな制約があり、そのためチップに搭載できるプログラム・メモリの容量も十分なものではなく、ＩＣカードに対して要求される機能を実現するために必要なプログラムを搭載できないことがある。
以上の様に、ＩＣカードにおいては限られたプログラムメモリの容量に対してできるだけ多くのプログラムを格納することが強く要求されている。
【０００５】
【発明が解決しようとする課題】
この発明は、プログラムメモリに格納できるプログラム量を増加させることが可能となり、多機能化、高機能化を実現することができる携帯可能電子装置を提供することを目的としている。
【０００６】
【課題を解決するための手段】
この発明の携帯可能電子装置は、マスクＲＯＭで構成されるプログラムメモリと、揮発性メモリで構成される作業用メモリとを有するものにおいて、上記プログラムメモリに解凍プログラムと圧縮されている少なくとも１つの個別アプリケーションプログラムとを記憶する記憶手段と、外部から供給される命令が個別アプリケーションプログラムの実行を判断する判断手段と、この判断手段により所望の個別アプリケーションプログラムの実行を判断した際、対応する圧縮されている個別アプリケーションプログラムをプログラムメモリから読出す読出手段と、この読出手段により読み出された圧縮されている個別アプリケーションプログラムを上記プログラムメモリに記憶されている解凍プログラムにより解凍する解凍手段と、この解凍手段により解凍した個別アプリケーションプログラムを上記作業用メモリに展開する展開手段と、この展開手段により上記作業用メモリに展開された個別アプリケーションプログラムによる処理を実行する実行手段とを有する。
【０００７】
【発明の実施の形態】
以下、図面を参照してこの発明のＩＣカード運用システムを説明する。
このＩＣカード発行システムは、図１に示すように、上位装置としてのパソコン（ＰＣ）１とこのＰＣ１と通信ライン２を介して接続されているリーダライタ３とからなる。このリーダライタ３には、図示しないコネクタ等で接続される取引対象カードとしてのＩＣカード４が装着されるようになっている。
【０００８】
ＰＣ１は、ＰＣ１の全体を制御する制御部５、制御用のプログラムが記憶されていたり種々のデータが記憶されるメモリ６、操作指示を行うキーボード等の操作部７、操作案内等が表示される表示部８、リーダライタ３とのデータのやり取りを行うインターフェース９により構成されている。
【０００９】
リーダライタ３は、リーダライタ３の全体を制御するＣＰＵ１０、制御用のプログラムが記憶されていたり種々のデータが記憶されるメモリ１１、ＰＣ１とのデータのやり取りを行うインターフェース１２、ＩＣカード４とのデータのやり取りを行うインターフェース１３により構成されている。また、リーダライタ３には、ＩＣカード４の挿入検知を行う検知器（図示しない）を有し、この検知結果をＰＣ１へ出力するようになっている。
【００１０】
ＩＣカード４は、図２に示すように、ＩＣカード４の全体を制御するＣＰＵ（制御素子）１４、カード内部動作の制御用のプログラムが記憶されているマスクＲＯＭ（プログラムメモリ）１５、外部（リーダライタ３）と交換する電文の送受信バッファとＣＰＵ１４の処理中のデータの一時格納バッファとして利用されるＲＡＭ（ワーキングメモリ、揮発性メモリ）１６、アプリケーション運用でその内容をリードライトして使用される運用データが格納されるデータメモリ（不揮発性メモリ）１７、リーダライタ３とのデータのやり取りを行うインターフェース１８、コンタクト部１９により構成されている。ＲＯＭ（プログラムメモリ）１５は、３０Ｋから４０Ｋバイトで構成されている。
【００１１】
上記ＩＣカード４は、比較的低速のシリアル・インターフェースを介して外部から命令を受けたり命令に対する応答を返すものであり、その速度は一般的な接触型ＩＣカードで通常、毎秒９６００ビットとなっている。
【００１２】
上記ＣＰＵ１４、ＲＯＭ１５、ＲＡＭ１６、データメモリ１７、インターフェース１８は、ＩＣチップ２０により構成され、コンタクト部１９およびＩＣチップ２０は一体的にモジュール化され、ＩＣカード本体に埋設されている。
【００１３】
上記ＲＯＭ１５には、たとえば上記ＩＣチップ２０の製造時に同時に焼き付けられ、図３に示すように、解凍処理プログラムを備えた基本処理プログラム（ＯＳ；１０Ｋバイト程度）と、あらかじめ圧縮されている個別アプリケーションプログラムＡ、Ｂ、Ｃが記憶されている。個別アプリケーションプログラムＡ、Ｂ、Ｃとしては、一例として、銀行取引業務処理、クレジット取引業務処理、プリペイド取引業務処理となっている。
【００１４】
たとえば、５ｋバイトのアプリケーションプログラムが３ｋバイトのアプリケーションプログラムに圧縮されている。
また、ＲＯＭ１５には、アプリケーションプログラムの管理テーブルが設けられ、アプリケーションプログラムごとの識別子と記憶アドレスとが対応して記憶されている。
上記個別アプリケーションプログラムは、ＰＣ１からＩＣカード４に対して当該アプリケーションプログラムを選択する命令を受けた時点で動作が可能となる。
また、一時に選択できるアプリケーションプログラムは一つに限定され、複数の個別アプリケーションプログラムが同時に並行して動作することはない。
【００１５】
ＩＣカード４に対して特定の業務を選択する命令、例えばＩＳＯ７８１６−４に規定されるＳＥＬＥＣＴ　ＦＩＬＥ命令が実行されると、ＩＣカード４は指定された業務に対する処理機能を提供するアプリケーションプログラム（圧縮された状態）を作業用メモリ（ＲＡＭ）１６上に解凍し、そこに制御を移譲する。
【００１６】
一般に、ＩＣカード４は同時に複数の業務を選択・処理することはないため、選択された業務の処理が終了し若しくは他の業務が選択された時に、作業用メモリ１６上に展開された当該業務のアプリケーションプログラムは破棄される。
【００１７】
次に、ＩＣカード４による処理について、図４に示すフローチャートを用いて説明する。
まず、ＰＣ１の表示部８の画面上のカード処理アイコンをクリックする（ＳＴ１）。すると、制御部５はＩＣカードによる処理を判断し、表示部８により処理用のＩＣカード４のリーダライタ３への挿入要求が表示される（ＳＴ２）。
この表示に基づいて、ＩＣカード４がリーダライタ３に挿入される（ＳＴ３）。この際、ＩＣカード４は通電され、起動される。
【００１８】
この挿入の検知信号（リーダライタ３からＰＣ１の制御部５へ出力）に基づいて、制御部５は業務選択命令をリーダライタ３を介してＩＣカード４のＣＰＵ１４に送信する（ＳＴ４）。
【００１９】
また、ＩＣカード４のＣＰＵ１４は、受信した業務選択命令が個別アプリケーションプログラムＡ、Ｂ、Ｃのいずれであるかを判断する（ＳＴ５）。たとえば、業務選択命令に付与されている識別子と上記管理テーブルの識別子とを比較することにより、個別アプリケーションプログラムＡを判断するとともに、記憶アドレスも読み出す。
【００２０】
ついで、ＣＰＵ１４は、判断した個別アプリケーションプログラムＡの圧縮されたデータをＲＯＭ１５から読出し（ＳＴ６）、解凍プログラムに応じて解凍し（ＳＴ７）、図３に示すように、作業用メモリとしてのＲＡＭ１６に展開する（ＳＴ８）。
【００２１】
そして、ＣＰＵ１４は、ＲＡＭ１６に展開された個別アプリケーションプログラムに基づいて、ＰＣ１の制御部５からの命令を受付け、この受付けた命令に対する処理を実行する（ＳＴ９）。
【００２２】
また、個別アプリケーションプログラムＢ、Ｃを判断した際も、上記同様に動作する（ＳＴ６から９）。
また、ＣＰＵ１４は、ステップ５で、業務選択命令を受信していない際、基本命令の実行、処理を行っている（ＳＴ１０）。
上記したように、ＩＣカードのプログラムメモリに搭載されるプログラムのうち、相互に同時には使用されることがない複数の個別アプリケーションプログラムを個別にデータ圧縮した上でプログラムメモリ（ＲＯＭ）に格納し、特定の個別アプリケーションプログラムが選択された時に当該アプリケーションプログラムを作業用メモリ（ＲＡＭ）上に解凍して動作させることにより、プログラムメモリに格納できるプログラム量を増加させることが可能となり、結果としてＩＣカードの多機能化・高機能化を実現することができる。
【００２３】
【発明の効果】
以上詳述したように、この発明によれば、プログラムメモリに格納できるプログラム量を増加させることが可能となり、多機能化、高機能化を実現することができる携帯可能電子装置を提供できる。
【図面の簡単な説明】
【図１】この発明の実施の形態に係るＩＣカード運用システムの構成例を概略的に示すブロック図。
【図２】ＩＣカードの構成例を概略的に示すブロック図。
【図３】ＩＣカードのプログラムメモリにおけるファイル構造の一例を示す図。
【図４】カードの処理を説明するフローチャート。
【符号の説明】
１…ＰＣ、２…通信ライン、３…リーダライタ、４…ＩＣカード、５…制御部、６…メモリ、７…操作部、８…表示部、９…インターフェース、１０…ＣＰＵ、１１…メモリ、１４…ＣＰＵ、１５…ＲＯＭ、１６…ＲＡＭ、１７…データメモリ、１９…コンタクト部、２０…ＩＣチップ。
【図１】
2004038285.tif 000003
【図２】
2004038285.tif 000004
【図３】
2004038285.tif 000005
【図４】
2004038285.tif 000006