(57)【特許請求の範囲】
【請求項１】
ＩＣカードリーダ・ライタにより非接触状態で読み書き可能なＩＣカードに搭載されるマイクロコンピュータで実行されるターゲットプログラムを開発するプログラム開発方法であって、
エミュレータ用マイクロコンピュータが、上記ターゲットプログラムを実行することにより、非接触状態での信号のやり取りに関する所定の非接触プロトコルに準拠した信号を伝達可能な導電ラインによって上記ＩＣカードリーダ・ライタに結合可能な非接触有線インタフェースケーブルを介して上記ＩＣカードリーダ・ライタにインタフェースする処理を含むことを特徴とするプログラム開発方法。
【請求項２】
ＩＣカードリーダ・ライタにより非接触状態で読み書き可能なＩＣカードに搭載されるマイクロコンピュータで実行されるターゲットプログラムを開発するプログラム開発方法であって、
エミュレータ用マイクロコンピュータが、上記ターゲットプログラムを実行することにより、アンテナコイルを有するＩＣカードケーブルを介して電波により上記ＩＣカードリーダ・ライタにインタフェースする第１処理と、
エミュレータ用マイクロコンピュータが、開発すべきターゲットプログラムを実行することにより、非接触状態での信号のやり取りに関する所定の非接触プロトコルに準拠した信号を伝達可能な導電ラインによって上記ＩＣカードリーダ・ライタに結合可能な非接触有線インタフェースケーブルを介して上記ＩＣカードリーダ・ライタにインタフェースする第２処理と、
上記アンテナコイルのチューニングが済んでいるか否かに応じて、上記第１処理と上記第２処理とを選択するための第３処理と、を含むことを特徴とするプログラム開発方法。
【請求項３】
ＩＣカードリーダ・ライタにより非接触状態で読み書き可能なＩＣカードに搭載されるマイクロコンピュータのターゲットプログラムを開発するプログラム開発装置であって、
開発すべきターゲットプログラムを実行可能なエミュレータ用マイクロコンピュータを備え、
上記エミュレータ用マイクロコンピュータには、アンテナコイルを有するＩＣカードケーブルと、非接触状態での信号のやり取りに関する所定の非接触プロトコルに準拠した信号を伝達可能な導電ラインによって上記ＩＣカードリーダ・ライタに結合可能な非接触有線インタフェースケーブルとが接続され、
上記エミュレータ用マイクロコンピュータは、上記アンテナコイルのチューニングが済んでいるか否かに応じて、上記ＩＣカードケーブルを介して電波により上記ＩＣカードリーダ・ライタにインタフェースする第１処理、あるいは上記非接触有線インタフェースケーブルを介して上記ＩＣカードリーダ・ライタにインタフェースする第２処理を選択可能であることを特徴とするプログラム開発装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ソフトウェア開発技術に関し、例えば非接触（コンタクトレス）ＩＣカードに内蔵されるマイクロコンピュータのプログラム開発に適用して有効な技術に関する。
【０００２】
【従来の技術】
近年、磁気カードに代わる情報記憶媒体として、ＣＰＵ（マイクロプロセッサ）等のＩＣを内蔵したＩＣカードが注目を集めている。ＩＣカードには信号の伝送方式により、接点を用いてリーダライタ装置から電力およびクロック信号と情報信号を受信し、コマンドを処理する接触方式のＩＣカードと、リーダライタ装置のコイルから発生される電波(電磁波）を、ＩＣカード側のコイルで受信し、電力およびクロック、送受信信号を生成して、リーダライタ装置より受信したコマンドを処理する非接触方式のＩＣカード（以下「非接触ＩＣカード」という）の２方式がある。
【０００３】
接触方式のＩＣカードは、電子マネー、クレジットカード、及びロイヤリティーカードなど、セキリュリティ重視の高信頼用途に適している。接触方式のＩＣカードの表面には金属製の接点が形成され、この接点に、リーダライタとの間で情報の読み書きが可能とされる。
【０００４】
これに対して、非接触方式のＩＣカードは、通信距離や通信周波数によってＩＳＯ規格が制定されており、密着型(ＩＳＯ１０５３６)、近接型(ＩＳＯ１４４４３)の２種類がある。さらに近接型非接触ＩＣカードには、データの変調方式によって、周波数１３．５６ＭHzのキャリア信号が存在する状態でデータ“１”を表わし、キャリア信号のない状態でデータ“０”を表わす１００％ＡＳＫ変調（ＡＳＫ：振幅変調）方式を採用しているＩＳＯ１４４４３−Ａと、データ“１”を表わす振幅のキャリア信号に対し９０％の振幅の信号でデータ“０”を表わす１０％ＡＳＫ変調方式を採用しているＩＳＯ１４４４３−Ｂの２種類がある。
【０００５】
ＩＳＯ１４４４３−Ａ変調方式は、一般にＣＰＵを持たないハードウエアロジックで構成された制御回路を持つ非接触ＩＣカードに利用される方式であり、一般に、ＩＳＯ１４４４３−ＡはシンプルなプロトコルをもつＩＣカード用として、例えばIＤカード（個人識別カード）やプリペードカードなどに利用されることが多い。一方、ＩＳＯ１４４４３−Ｂタイプは、ＣＰＵを内蔵した非接触ＩＣカードで利用される方式であり、ＩＳＯ１４４４３−Ｂは複雑なプロトコル（例えばＩＳＯ７８１６−Ｔ１など）をもつ銀行用のキャッシュカードやクレジットカードなどに利用されることが多い。
【０００６】
また、近年、非接触ＩＣカードの普及に伴い、各種仕様のカードを統合したコンビネーションカードなるものが提案されている。
【０００７】
尚、非接触ＩＣカードにについて記載された文献の例としては、特開２０００−１７２８０６号公報がある。
【０００８】
【発明が解決しようとする課題】
ソフトウェア仕様に基づいて作られたソースコードは、ＩＣサンプルを製造する前に、エミュレータによって十分にテストされる。このテストをエミュレータテストという。エミュレータは、一般には、開発中のユーザプログラム（「ターゲットプログラム」とも称する）の実行状態を逐次トレースするためのトレース回路、開発中のユーザプログラムの実行において、予め設定されたブレーク条件が成立するか否かをモニタするためのブレーク回路、上記トレース回路やブレーク回路の動作を制御するためのエミュレーション制御回路などを含み、開発途中のユーザプログラムを、エミュレーション専用のマイクロコンピュータで実行させ、その実行状態をリアルタイムでトレースしたり、所定のブレーク条件を設定することによってユーザプログラムの実行を当該ブレーク条件で停止させたりすることでプログラム開発を支援する。
【０００９】
しかしながら、従来のＩＣカード用エミュレータにおいては、コンタクトタイプのＩＣカードはサポートするものの、非接触ＩＣカードに対してサポートされていないため、非接触ＩＣカード対応とするには、電波による送受信を可能とするためのＲＦ回路を別途組み込む必要があった。このため、非接触ＩＣカード用のプログラム開発においては、実際のＩＣカードと同じ環境でのソフトウェアデバッグ、すなわち、実機に則したエミュレーションを行うことが困難とされる。この結果、例えば、上記ソースコードのエミュレータテストにおいて、良好なテスト結果が出たとしても、その後のＩＣサンプルテストにおて不都合が出るおそれがある。
【００１０】
本発明の目的は、実機に則したエミュレーションによるプログラム開発を可能にするための技術を提供することにある。
【００１１】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【００１２】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【００１３】
すなわち、エミュレータ用マイクロコンピュータが、開発すべきターゲットプログラムを実行することにより、アンテナコイルを有するＩＣカードケーブルを介して電波によりターゲットシステムにインタフェースする処理を含める。
【００１４】
上記手段によれば、エミュレータ用マイクロコンピュータが、開発すべきターゲットプログラムを実行することにより、アンテナコイルを有するＩＣカードケーブルを介して電波によりターゲットシステムにインタフェースされるため、上記ＩＣカードケーブルにＲＦ部を追加することなく、ＩＣカードリーダ・ライタに非接触状態で結合させることができ、そのような結合状態により、実機に則したエミュレーションが可能となる。
【００１５】
また、エミュレータ用マイクロコンピュータが、開発すべきターゲットプログラムを実行することにより、非接触状態での信号のやり取りに関する所定の非接触プロトコルに準拠した信号を伝達可能な導電ラインによって上記ＩＣカードリーダ・ライタに結合可能な非接触有線インタフェースケーブルを介してターゲットシステムにインタフェースする処理を含める。
【００１６】
上記手段によれば、非接触有線インタフェースケーブルは、非接触状態での信号のやり取りに関する所定の非接触プロトコルに準拠した信号を伝達可能な導電ラインを介して上記ＩＣカードリーダ・ライタに結合可能であることから、ＩＣカードケーブルが存在しない場合においても、この非接触有線インタフェースケーブルを使用することによって、上記ＩＣカードリーダ・ライタに結合させることができる。この場合の結合において、非接触状態での信号のやり取りに関する所定の非接触プロトコルに準拠した信号をやり取りするようになっているため、ＩＣカードケーブルが存在しないにもかかわらず、実機に則したエミュレーションが可能となる。
【００１７】
エミュレータ用マイクロコンピュータが、開発すべきターゲットプログラムを実行することにより、アンテナコイルを有するＩＣカードケーブルを介して電波によりターゲットシステムにインタフェースする第１処理と、エミュレータ用マイクロコンピュータが、開発すべきターゲットプログラムを実行することにより、非接触状態での信号のやり取りに関する所定の非接触プロトコルに準拠した信号を伝達可能な導電ラインによって上記ＩＣカードリーダ・ライタに結合可能な非接触有線インタフェースケーブルを介してターゲットシステムにインタフェースする第２処理と、上記アンテナコイルのチューニングが済んでいるか否かに応じて、上記第１処理と上記第２処理とを選択するための第３処理とを含める。
【００１８】
上記手段にれば、上記ＩＣカードの仕様との関係で上記アンテナコイルのチューニングが済んでいる場合には、上記第１処理により、アンテナコイルを有するＩＣカードケーブルを介して電波によりターゲットシステムにインタフェースされ、上記ＩＣカードの仕様との関係で上記アンテナコイルのチューニングが済んでいない場合には、第２処理により非接触有線インタフェースケーブルを介してターゲットシステムにインタフェースされる。これにより、上記アンテナコイルのチューニングが済んでいる場合でもそれが済んでいない場合でも、実機に則したエミュレーションが可能となる。
【００１９】
このとき、エミュレータ用マイクロコンピュータが、開発すべきターゲットプログラムを実行することによってターゲットシステムから得られる情報を収集する処理を含めることができる。
【００２０】
このとき、上記エミュレータ用マイクロコンピュータには、開発すべきターゲットプログラムを実行することにより、アンテナコイルを有するＩＣカードケーブルを介して電波によりターゲットシステムにインタフェースするためのＲＦ処理と、上記ＲＦ処理でのデータ入出力のプロトコル制御を行うためのＲＦインタフェース処理とを含めることができる。
【００２１】
アンテナコイルを有するＩＣカードケーブルを介して電波によりターゲットシステムにインタフェースするためのＲＦ処理部と、上記非接触有線インタフェースケーブルとを、上記ＲＦ部を介して行われるデータ入出力のプロトコル制御のためのＲＦインタフェース部に、選択的に結合させるための選択処理を含めることができる。
【００２２】
アンテナコイルを有するＩＣカードケーブルを介して電波によりターゲットシステムにインタフェースするためのＲＦ部と、上記非接触有線インタフェースケーブルとを、上記ＲＦ部を介して行われるデータ入出力のプロトコル制御のためのＲＦインタフェース部に、選択的に結合させるための第１選択処理と、上記非接触有線インタフェースケーブルを介して伝達された第１クロック信号と、上記ＩＣカードケーブルを及び上記ＲＦ部を介して伝達された第２クロック信号とを選択的に上記ＣＰＵに伝達するための第２選択処理と、上記非接触型有線インタフェースケーブルを介して伝達された第１リセット信号と、上記ＩＣカードケーブルを及び上記ＲＦ部を介して伝達された第２リセット信号とを選択的に上記ＣＰＵに伝達するための第３選択処理とを含めることができ、それによれば、上記第３選択処理によりデータ入出力のインタフェース切替を適切に行うことができるので、実機に則したエミュレーションを容易に行うことができる。
【００２３】
高電位側電源のレベルを検出するための高電位側電源検出処理と、上記高電位側電源検出処理での検出結果に基づいて、エミュレータ内部で生成されたクロック信号及びリセット信号を選択的に上記中央処理装置に供給するための制御処理とを含めることができる。その場合には、上記ＩＣカードケーブルが、ＩＣカードリーダから離れたために、ＲＦ部を介して上記中央処理装置にクロック信号が供給されないにもかかわらず、上記エミュレータ内部クロック信号に基づいてコマンド処理プログラムを実行することができるので、ソフトウェアデバッグを効率良く行うことができる。
【００２４】
このとき、上記ＩＣカードケーブルとして、カード状に形成された基板と、上記基板に形成されたアンテナコイルとを含むものを用いることができる。
【００２５】
さらに、それぞれ互いにタイプの異なる非接触プロトコルに準拠した複数の非接触ＩＯ部を外部入力に基づいて選択するための選択処理を含めることができる。
【００２６】
これにより、例えばサンプルチップを搭載可能なＩＣソケットを備えたボードが、ＩＣカードケーブルに結合されることにより、このＩＣカードケーブルにおけるカード形状基板に実チップが搭載されていなくても、開発中のユーザプログラムを実行させてその動作を確認することができるため、ＩＣサンプルテストを効率良く行うことができる。
【００２７】
【発明の実施の形態】
ここで先ず、本発明にかかるプログラム開発方法によって開発されたプログラムが搭載される非接触ＩＣカードについて説明する。ＩＣカードには、図１６に示されるように、接触式カードと、非接触式カードと、その双方の機能を有するカード（Ｄｕａｌ  Ｗａｙ）に分類される。また、図１７に示されるように接触型は、接点により情報の読み書きが可能とされ、非接触型は電波を利用して情報の読み書きが可能とされる。本実施形態では、非接触型を中心に説明する。
【００２８】
図２（Ａ）には上記非接触ＩＣカードの平面が示され、図２（Ｂ）には同図（Ａ）のＡ−Ａ’線切断断面が示される。
【００２９】
非接触ＩＣカード５０は、特に制限されないが、電子マネー等のカードとされ、カード状に形成されるとともにその縁辺に沿ってアンテナコイル４１が形成され、マイクロコンピュータ４２が内蔵されている。このマイクロコンピュータ４２は、上記アンテナコイル４１を介してラジオ周波数信号の送受信を可能とするＲＦ（ラジオ周波）部を内蔵する。上記アンテナコイル４０は、特に制限されないが、拡大して示されるように（４１０で示す）、導電ラインによって数ターン巻かれたものとされる。このアンテナコイル４０をどのような形状にするか、あるいあは何ターン巻回するかなどは、ＩＣカードによって異なり、そのＩＣカードにもっとも適合するようにアンテナコイル４０のチューニングが行われている。
【００３０】
図３には、上記マイクロコンピュータ４２の構成例が示される。
【００３１】
マイクロコンピュータ４２は、特に制限されないが、公知の半導体集積回路製造技術により半導体シリコン基板などの一つの半導体基板に形成される。
【００３２】
図３に示されるマイクロコンピュータ４２は、特に制限されないが、マイクロコンピュータ部５１と、ＲＦ部５２とを含む。マイクロコンピュータ部５１は、プログラムを実行するためのＣＰＵ（中央処理装置）５１１と、ＲＡＭ（ランダムアクセスメモリ）やＲＯＭ（リードオンリメモリ）などのメモリ５１２、ＲＦ部５２との間で信号のやり取りを可能とするＲＦインタフェース（Ｉ／Ｆ）５１３、タイマや乱数生成回路などの周辺モジュール５１４を含む。上記メモリ５１２に含まれるＲＯＭには、上記ＣＰＵ５１１で実行されるプログラムが格納される。ＲＦ部５２は、上記マイクロコンピュータ部５１との間でデータの入出力を行う。また、ＲＦ部５２はマイクロコンピュータ部５１にリセット信号ＲＥＳＥＴ及びクロック信号ＣＬＫ出力する。さらに、マイクロコンピュータ部５１には、外部端子Ｌ１，Ｌ２が結合される。この外部端子Ｌ１，Ｌ２には、上記アンテナコイル４１が接続される。ＲＦ部５２は、リセット信号ＲＥＳＥＴを生成するためのリセット生成部５２１、データを復調するためのデータ復調部５２２、データを変調するためのデータ変調部５２３、受信信号からクロック信号を抽出するためのクロック抽出・生成部５２５、受信信号を平滑してマイクロコンピュータ部５１の動作用電源を形成するための平滑化・電源生成部５２４を含む。
【００３３】
上記の構成において、ＩＣカード５０がＩＣカードリーダ・ライタに近づけられたとき、アンテナコイル４１に励起された起電力が平滑化・電源生成部５２４で平滑されることによって高電位側電源Ｖｄｄが形成される。また、この高電位側電源Ｖｄｄに基づいてリセット信号ＲＥＳＥＴが形成される。マイクロコンピュータ５１はこのリセット信号ＲＥＳＥＴによってパワーオンリセットされる。クロック抽出・生成部５２５は、アンテナコイル４１に励起された起電力からクロック信号ＣＬＫを抽出する。このクロック信号ＣＬＫは、マイクロコンピュータ部５１に供給される。アンテナコイル４１を介して取り込まれたデータは、データ復調部で復調される。このデータＤＡＴＡＩＮはマイクロコンピュータ部５１に伝達される。また、マイクロコンピュータ部５１から伝達された出力データＤＡＴＡＯＵＴは、データ変調部５２３で変調されてから信号出力のため、アンテナコイル４１に供給される。
【００３４】
次に、上記マイクロコンピュータ４２で実行されるプログラムの開発方法について説明する。
【００３５】
図１には本発明にかかるプログラムの開発方法の一例であるＩＣカードシステム開発の流れが示される。図１に示されるＩＣカードシステム開発は、特に制限されないが、半導体メーカ、ＩＣカードメーカ、ＩＣカードリーダ・ライタメーカ、及びシステムメーカとの関係で示される。
【００３６】
先ず、ＩＣカードメーカにおいて、ＩＣカードシステムの仕様が決定されると（Ｓ１１）、上記ＩＣカードシステム仕様に基づいて、ＩＣカードリーダ・ライタメーカでは、ＩＣカードのリード・ライトを可能とするＩＣカードリーダ・ライタの仕様が決定され、それに基づいてＩＣカードリーダ・ライタ１４が製造される（Ｓ１２）。また、システムメーカにおいては、上記ＩＣカードシステム仕様に基づいて、上記ＩＣカードのリード・ライト結果に基づく情報処理を行うための上位システムの仕様が決定され、それに基づく上位システムの構築が行われる（Ｓ１３）。さらに、ＩＣカードメーカにおいては、上記ＩＣカードシステムの仕様（Ｓ１１）と、半導体メーカによって決定されたＩＣカード用マイクロコンピュータ仕様（Ｓ１５）とに基づいて、上記ＩＣカード用マイクロコンピュータで実行されるＩＣソフトウェアの仕様が決定され（Ｓ１４）。その仕様に従って、原始プログラムであるソースコードが生成される（Ｓ１５）。
【００３７】
ＩＣカードを量産する前に、開発途中のプログラムの検証は非常に重要とされる。開発途中のプログラムはエミュレータにより事前に動作確認され、また、量産する前にＩＣサンプルが製造され、そのサンプルにて評価される。
【００３８】
上記エミュレータによる動作確認には、非接触ＩＣカードに内蔵されるアンテナのチューニングが済んでいるか否かによって、エミュレータによるテストの仕方が異なる。これは、開発途中のプログラムのエミュレーションの段階では、まだ、アンテナ非接触ＩＣカードのアンテナのチューニングが必ずしも完了しているとは限らないし、もし、上記アンテナのチューニングが完了していない場合には、非接触ＩＣカードの電波によるリード・ライトが不可能になるからである。このような事情に鑑みて本システム開発においては、アンテナチューニングが済んでいるか否かの判別を行い（Ｓ１６）、その判別結果に応じて適切なシステムデバッグが可能となるエミュレータシステム１６が使用される。尚、このエミュレータシステム１６の詳細な構成及びその作用については後述する。
【００３９】
上記ステップＳ１６の判別において、アンテナチューニングが済んでいない（Ｎｏ）と判断された場合には、ＩＣカードリーダ・ライタ１４及びカードエミュレータシステム１６を用いて、後に詳述する非接触有線インタフェース（Ｉ／Ｆ）によるエミュレータテストが行われ（Ｓ２９）、そのエミュレータテストの結果が良好であるか否かの判別が行われる（Ｓ３０）。この判別において、上記エミュレータテストの結果が良好である（Ｙｅｓ）と判断された場合には、ＩＣ製造用ソフトウェアマスクＲＯＭパターンが製造される（Ｓ１９）。それに対して上記ステップＳ３０の判別において、エミュレータテストの結果が良好ではない（Ｎｏ）と判断された場合には、不具合解析及びそれの修正が行われ（Ｓ３１）、その結果がソースコードに反映される。
【００４０】
また、上記ステップＳ１６の判別において、アンテナチューニングが済んでいる（Ｙｅｓ）と判断された場合には、ＩＣカードリーダ・ライタ１４及びＩＣカードエミュレータシステム１６を用いて、後に詳述する非接触ＲＦインタフェース（Ｉ／Ｆ）によるエミュレータテストが行われ（Ｓ１７）、そのエミュレータテストの結果が良好であるか否かの判別が行われる（Ｓ１８）。この判別において、上記エミュレータテストの結果が良好である（Ｙｅｓ）と判断された場合には、ＩＣ製造用ソフトウェアマスクＲＯＭパターンが製造される（Ｓ１９）。それに対して上記ステップＳ１８の判別において、エミュレータテストの結果が良好ではない（Ｎｏ）と判断された場合には、不具合解析及びそれの修正が行われ（Ｓ３１）、その結果がソースコードに反映される。
【００４１】
上記ステップＳ１９においてＩＣ製造用ソフトウェアマスクＲＯＭパターンが製造されると、それに基づいて、評価のためのＩＣサンプル８が製造され（Ｓ２０）、そしてこのＩＣサンプル８のテストが行われる（Ｓ２２）。このＩＣサンプルテストにおいてはＩＣカードリーダ・ライタ１４は使用されるが、エミュレータシステム１６は使用されない。そして、上記ステップＳ２１のＩＣサンプルテストの結果が良好か否かの判別が行われる（Ｓ２２）。このステップＳ２２の判別において、上記ＩＣサンプルテストの結果が良好である（Ｙｅｓ）と判断された場合には、実際に非接触ＩＣカードに搭載されるマイクロコンピュータの９の量産製造が行われ（Ｓ２３）、非接触ＩＣカードへの組み込みが行われる（Ｓ２４）。それに対して、上記ステップＳ２２の判別において、上記ＩＣサンプルテストの結果が良好ではない（Ｎｏ）と判断された場合には、不具合解析及びそれの修正が行われ（Ｓ３１）、その結果がソースコードに反映される。
【００４２】
ここで、上記ＩＣカードリーダ・ライタ１４、又は上記ＩＣカードリーダ・ライタとそれに結合された上位システムが、本発明におけるターゲットシステムの一例とされる。
【００４３】
次に、上記ステップＳ１７、Ｓ２９、Ｓ２１で使用されるＩＣカードリーダ・ライタ１４やエミュレータシステム１６について説明する。
【００４４】
図４には上記ＩＣカードリーダ・ライタ１４やＩＣカードエミュレータシステム１６を含むプログラム開発システムが示される。このプログラム開発システム１０は、図２に示される非接触ＩＣカード５０に搭載されるマイクロコンピュータ４２で実行されるプログラムの開発支援システムとされ、特に制限されないが、パーソナルコンピュータなどのホストコンピュータ１１と、それに結合されたＩＣカードエミュレータシステム１６と、ＩＣカードリーダ・ライタ１４とを含む。ＩＣカードリーダ・ライタ１４は、図示されない上位システムに結合され、非接触ＩＣカード５０に対して非接触状態で当該ＩＣカード５０のリード／ライトが可能とされる。
【００４５】
ＩＣカードエミュレータシステム１６は、ホストコンピュータ１１によって動作制御される。また、エミュレーションに関する各種条件の設定は、ホストコンピュータ１１におけるマウスやキーボードなどの適宜の入力装置を介して行うことができる。
【００４６】
上記ＩＣカードエミュレータシステム１６は、特に制限されないが、エミュレータ本体１２と、このエミュレータ本体１２に結合されたＩＣカードケーブル１３、及び非接触有線Ｉ／Ｆ（インタフェース）ケーブル１５とを含む。ＩＣカードケーブル１３、及び非接触有線Ｉ／Ｆケーブル１５は、特に制限されないが、コネクタを介してエミュレータ本体１２に着脱自在とされる。ＩＣカードケーブル１３は、ケーブル部１３Ａと、その一端に設けられたカード形状基板１３Ｂとを含む。ケーブル部１３Ａの他端はエミュレータ本体１２にコネクタを介して着脱自在に結合される。カード形状基板１３Ｂには、非接触ＩＣカード５０と同様に、アンテナコイルが形成され、ＩＣカードリーダ・ライタ１４に対して電波による結合が可能とされる。また、非接触有線Ｉ／Ｆケーブル１５は、カードリーダ１４に対してコネクタを介して着脱自在に結合され、エミュレータ本体１２とＩＣカードリーダ・ライタ１４との間でエミュレーションに関する各種情報のやり取りを可能とする。
【００４７】
図１に示されるステップＳ１６の判別において、アンテナチューニングが済んでいない（Ｎｏ）と判断された場合とは、図２に示される非接触ＩＣカード５０に内蔵されるアンテナコイル４１の仕様が決定されていない状態を意味する。アンテナコイル４１の仕様が決定されていない場合には、ＩＣカードケーブル１３は製造されていないため、当該ケーブル１３が使用不可とされる。この場合には、図４に示されるように、非接触有線Ｉ／Ｆケーブル１５を介してエミュレータ本体１２とＩＣカードリーダ・ライタ１４とが結合され、当該ケーブル１５を介してエミュレーションに関する各種情報のやり取りが行われる。また、図１に示されるステップＳ１６の判別において、アンテナチューニングが済んでいる（Ｙｅｓ）と判断された場合とは、図２に示される非接触ＩＣカード５０に内蔵されるアンテナコイル４１の仕様が決定され、それに基づいてＩＣカードケーブル１３が完成されている場合を意味する。この場合、ＩＣカードケーブル１３使用可能であるため、図５に示されるように、ＩＣカードケーブル１３を使用することにより、エミュレータ本体１２とＩＣカードリーダ・ライタ１４とが電波を介して結合される。
【００４８】
図５には、上記エミュレータ本体１２とＩＣカードケーブル１３との関係が示される。
【００４９】
エミュレータ本体１２は、特に制限されないが、開発中のユーザプログラムや、エミュレータコマンド処理用プログラムが実行されるエミュレータ用マイクロコンピュータ７０、高電位側電源ＶｄｄのレベルをモニタするためのＶｄｄモニタ７２などを含み、公知の製造技術によりプリント配線基板などで構成される。
【００５０】
ＩＣカードケーブル１３は、特に制限されないが、ケーブル部１３Ａと、その一端に設けられたカード形状基板１３Ｂとを含む。ケーブル部１３Ａの他端はエミュレータ本体１２に、図示されないコネクタを介して着脱自在に結合される。カード形状基板１３Ｂには、非接触ＩＣカード５０と同様に、アンテナコイル１３Ｃが形成され、ＩＣカードリーダ・ライタ１４に対して電波による結合が可能とされる。また、接触ＩＣカード、非接触ＩＣカードの双方に対応するため、上記アンテナコイル１３Ｃとは別にコンタクトパターン１３Ｅが設けられている。コンタクトパターン１３Ｅには、高電位側電源Ｖｄｄ、低電位側電源Ｖｓｓ、クロック信号ＣＬＫ、リセット信号ＲＥＳなどの各端子が含まれ、それがケーブル部１３Ａを介してエミュレータ本体１２に結合される。上記アンテナコイル１３Ｃの両端も、ケーブル部１３Ａを介してエミュレータ本体１２に結合される。
【００５１】
図１０には、上記エミュレータ本体１２の構成例が示される。
【００５２】
図１０に示されるようにエミュレータ本体１２は、特に制限されないが、開発中のユーザプログラムや、エミュレータコマンド処理用プログラムを実行するためのエミュレータ用マイクロコンピュータ７０と、エミュレーション動作を制御するためのエミュレーション制御部２００とを含む。
【００５３】
上記エミュレータ用マイクロコンピュータ７０は、特に制限されないが、ＣＰＵ６１１、各種情報を保持するための不揮発性メモリ７８、プログラム格納用ＲＯＭ（リードオンリメモリ）７９、プログラム実行時の中間データ格納用ＲＡＭ（ランダムアクセスメモリ）８０、タイマや乱数発生器などの周辺モジュール６１４、電波による送受信を行うためのＲＦ部６２、このＲＦ部６２と他の内部回路との間で信号のやり取りを可能とするＲＦインタフェース７６、図１４に示されるコンタクトパターン１３Ｅを介して、ＩＣカード・リーダライタ１４から接触状態で電源や各種信号を取り込むための接触アナログ部１０２、上記ＲＦ部６２と接触アナログ部１０２との間で接触・非接触のインタフェース切替を可能とする切替回路群１０１、外部に結合された接触ケーブルを介して調歩同期シリアル送受信（Ｉ／Ｏ−１／ＩＲＱ，Ｉ／Ｏ−２／ＩＲＱ）を可能とするための接触ＩＯ（入出力）部１０３、及び信号伝達経路切替のためのマルチプレクサ８７，８８，９０が設けられている。上記ＣＰＵ６１１、ＲＯＭ７９、ＲＡＭ８０、周辺モジュール６１４、ＲＦインタフェース７６、及び接触ＩＯ部１０３は、バスＢＵＳを介して信号のやり取りが可能に結合されている。
【００５４】
上記ＲＦ部６２について説明する。
【００５５】
ＲＦ部６２は、特に制限されないが、端子Ｌ１，Ｌ２に接続されたＩＣカードケーブル１３におけるアンテナコイル１３Ｃを介して取り込まれた高周波信号をＡＳＫ形式で復調することによって受信信号ＲｘＤを検出するための復調・検出回路７２１、ＲＦインタフェース７６から出力された送信信号ＴｘＤを変調するためのロードスイッチ変調回路７２２、アンテナコイル１３Ｃを介して取り込まれた高周波信号からクロック信号を抽出するためのクロック抽出回路７２４、アンテナコイル１３Ｃを介して取り込まれた高周波信号を整流するための整流回路７２３、この整流回路７２３の整流出力を安定化するためのレギュレータ基準電源７２５、このレギュレータ基準電源７２５から出力されたトリガ信号に基づいてパワーオンリセット信号を形成するためのパワーオンリセット回路７２６を含んで成る。上記ＡＳＫ復調・検出回路７２１によって得られた受信信号ＲｘＤは、後段のマルチプレクサ８７を介してＲＦインタフェース７６に伝達される。
【００５６】
接触アナログ部１０２及び切替回路群１０１について説明する。
【００５７】
特に制限されないが、ＩＣカードケーブル１３のカード形状基板１３Ｂには、図１４に示されるようにＩＣカードリーダ・ライタ１４に設けられた端子に接触可能なコンタクトパターン１３Ｅが形成され、このコンタクトパターン１３Ｅを介して、ＩＣカードリーダ・ライタ１４から高電位側電源Ｖｄｄ、低電位側電源Ｖｓｓ、クロック信号ＣＬＫ、及びリセット信号ＲＥＳの供給、及びシリアルデータのやり取りが可能とされるとき、上記アンテナコイル１３Ｃを介して、それらが供給される場合との切替が、上記切替回路群１０１によって行われる。上記切替回路群１０１は、電源又は信号が早く伝達された方を優先的に選択し、その選択状態を保持する。例えば、高電位側電源Ｖｄｄ、低電位側電源Ｖｓｓ、クロック信号ＣＬＫ、及びリセット信号ＲＥＳの伝達が、上記ＩＣカードケーブル１３のカード形状基板１３Ｂに設けられたコンタクトパターン１３Ｅ経由よりもアンテナコイル１３Ｃ経由のほうが早い場合には、上記切替回路群１０１は、ＲＦ部６２から出力された高電位側電源Ｖｄｄ、低電位側電源Ｖｓｓ、クロック信号ＣＬＫ、及びリセット信号ＲＥＳを優先的に後段回路に伝達する。また、高電位側電源Ｖｄｄ、低電位側電源Ｖｓｓ、クロック信号ＣＬＫ、及びリセット信号ＲＥＳの伝達が、アンテナコイル１３Ｃ経由よりも、上記ＩＣカードケーブル１３のカード形状基板１３Ｂに設けられた接触コンタクトパターン経由のほうが早い場合には、当該接触コンタクトパターンを経由して伝達された高電位側電源Ｖｄｄ、低電位側電源Ｖｓｓ、クロック信号ＣＬＫ、及びリセット信号ＲＥＳを優先的に後段回路に伝達する。
【００５８】
上記切替回路群１０１は、特に制限されないが、クロック抽出回路７２４から出力されたクロック信号ＣＬＫと、上記ＩＣカードケーブル１３のカード形状基板１３Ｂに設けられた接触コンタクトパターンを介して取り込まれたクロック信号ＣＬＫとを選択的に後段のマルチプレクサクロック切替回路７３１、レギュレータ基準電源７２５から出力された高電位側電源Ｖｄｄと、上記ＩＣカードケーブル１３のカード形状基板１３Ｂに設けられた接触コンタクトパターンを介して取り込まれた高電位側電源Ｖｄｄとを選択的に後段のＶｄｄモニタ７２に伝達するための電源切替回路７３２、パワーオンリセット回路７２６から出力されたパワーオンリセット信号ＲＥＳと上記ＩＣカードケーブル１３のカード形状基板１３Ｂに設けられた接触コンタクトパターンを介して取り込まれたリセット信号とを選択的に後段のマルチプレクサ８８に伝達するためのＰＯＲ切替回路７３３を含む。
【００５９】
ＲＦインタフェース７６について説明する。
【００６０】
ＲＦインタフェース７６は、特に制限されないが、複数種類の非接触ＩＯ部７６Ａ，７６Ｂ，７６Ｃを含む。非接触ＩＯ部７６ＡはＴｙｐｅＡ方式とされ、非接触ＩＯ部７６ＢはＴｙｐｅＢ方式とされ、非接触ＩＯ部７６Ｃは、将来追加される新タイプに対応するＩＯ部とされる。ここで、ＴｙｐｅＡとは、特に制限されないが、図１２に示されるように、周波数１３．５６ＭHzのキャリア信号が存在する状態でデータ“１”を表わし、キャリア信号のない状態でデータ“０”を表わす１００％ＡＳＫ変調（ＡＳＫ：振幅変調）方式を採用しているＩＳＯ１４４４３−Ａを意味し、ＴｙｐｅＢとは、特に制限されないが、データ“１”を表わす振幅のキャリア信号に対し９０％の振幅の信号でデータ“０”を表わす１０％ＡＳＫ変調方式を採用しているＩＳＯ１４４４３−Ｂを意味する。複数種類の非接触ＩＯ部７６Ａ，７６Ｂ，７６Ｃの切替は、エミュレーション制御部２００に含まれるタイプ切替部１０５からのタイプ切替信号ＴＹＰＥＳＥＬによって行われる。このタイプ切替は、ホストコンピュータ１１において、図１５に示されるような選択画面表示からのデバイス選択に基づいて行われる。すなわち、図５において１５０で示されるように複数種類のデバイスが選択可能可能に表示され、適宜の入力装置を介してこの複数種類のデバイスから所望のデバイスを選択することができ、このデバイス選択に従ってタイプ切替部１０５においては、非接触ＩＯ部７６Ａ，７６Ｂ，７６ＣなどのＩＯ部伝達が行われる。
【００６１】
上記非接触ＩＯ部７６Ａは、その構成例が代表的に示されるように、マルチプレクサ８７を介して入力された受信信号の復号を行う復号回路７６１、この復号回路７６１のＣＲＣ（巡回符号からから構成された誤り訂正符号）による検査などを含む受信制御を行う受信制御回路７６２、制御信号の入出力を可能とするＣＴＬインタフェース（ＣＴＬＩ／Ｆ）７６３、バスＢＵＳに結合されたＳＲＡＭ（スタティックランダムアクセスメモリ）７６４、上記ＳＲＡＭ７６４のインタフェース機能を有するＳＲＡＭインタフェース（ＳＲＡＭＩ／Ｆ）７６５、ＣＲＣ生成などを含む送信制御回路７６６、この送信制御回路７６６から伝達された信号符号化するための符号回路７６７を含む。上記符号回路７６７によって符号化された信号は送信信号ＴｘＤとして上記ＲＦ部に伝達されるとともに、トレースやブレーク処理のためにトレース・ブレーク回路７１に伝達される。
【００６２】
次に、エミュレーション制御部２００について説明する。
【００６３】
エミュレーション制御部２００は、特に制限されないが、トレース・ブレーク制御回路７１、リセット・クロック制御部８９、Ｖｄｄモニタ７２、受信切替部１０４、及びタイプ切替部１０５を含む。
【００６４】
トレース・ブレーク制御回路７１は、ＲＦインタフェース６１３から出力された出力データ、ＲＦ部６２からＲＦインタフェース６１３に入力される入力データをトレースやブレークのために取り込む。
【００６５】
Ｖｄｄモニタ７２は、入力される高電位側電源Ｖｄｄのレベルを所定のしきい値Ｖｔｈと比較する。この比較結果はリセット・クロック制御部８９に伝達される。
【００６６】
リセット・クロック制御部８９は、リセット信号及びクロック信号の選択を制御する。このリセット信号及びクロック信号の選択を制御には２種類の制御が含まれる。第１の制御は、ＩＣカードケーブル１３が使用される場合と、非接触有線Ｉ／Ｆケーブル１５が使用される場合とのクロック信号及びリセット信号の入力経路を切替るための制御であり、第２の制御は、上記Ｖｄｄモニタ７２のモニタ結果に基づいて、クロック信号及びリセット信号との入力経路を切り替えるための制御である。上記リセット・クロック制御部８９からはリセット信号の入力経路切替を行うためのリセット切替制御信号ＲＥＳＳＥＬが出力され、この切替制御信号ＲＥＳＳＥＬによってマルチプレクサの選択動作が制御される。また、上記リセット・クロック制御部８９からはクロック信号の入力切替を行うためのクロック切替制御信号ＲＥＳＳＥＬが出力され、このクロック切替制御信号ＲＥＳＳＥＬによってマルチプレクサ８８の選択動作が制御される。
【００６７】
ここで、上記リセット・クロック制御部８９における第１の制御について説明する。
【００６８】
例えば図１に示されるフローチャートにおけるステップＳ１６の判別においてアンテナチューニングが未だ済んでいない（Ｎｏ）と判断され、非接触有線Ｉ／Ｆエミュレータテストが行われる場合（Ｓ２９）には、リセット・クロック制御部８９の制御によって、非接触有線Ｉ／Ｆケーブル１５を介して取り込まれたリセット信号ＣＬ＿ＲＥＳ、及びクロック信号ＣＬ＿ＣＬＫが、それぞれマルチプレクサ８８，９０によって選択的に、ＣＰＵ６１１に伝達される。これにより、ＣＰＵ６１１では、上記リセット信号ＣＬ＿ＲＥＳによってリセットされ、また、そのリセット信号によるリセット状態が解除された後は上記クロック信号ＣＬ＿ＣＬＫに同期動作する。このとき、受信切替部１０４の制御によって、非接触Ｉ／Ｆケーブル１５を介して取り込まれた受信信号ＣＬ＿ＲｘＤがマルチプレクサ８７によって選択的にＲＦインタフェース７６に入力される。このように非接触有線Ｉ／Ｆケーブル１５を介して取り込まれたリセット信号ＣＬ＿ＲＥＳやクロック信号ＣＬ＿ＣＬＫがＣＰＵ６１１に伝達され、また、非接触Ｉ／Ｆケーブル１５を介して取り込まれた受信信号ＣＬ＿ＲｘＤがＲＦインタフェース７６に入力されることにより、上記ステップＳ２９の非接触有線Ｉ／Ｆエミュレータテストが可能とされる。
【００６９】
また、図１に示されるフローチャートにおけるステップＳ１６の判別においてアンテナチューニングが済んでいる（Ｙｅｓ）と判断され、非接触ＲＦＩ／Ｆエミュレータテストが行われる場合（Ｓ１７）には、リセット・クロック制御部８９の制御によって、ＩＣカードケーブル１３及びＲＦ部６２を介して取り込まれたリセット信号ＲＥＳ、及びクロック信号ＣＬＫが、それぞれマルチプレクサ８８，９０によって選択的にＣＰＵ６１１に伝達される。これにより、ＣＰＵ６１１では、上記リセット信号ＲＥＳによってリセットされ、また、そのリセット信号によるリセット状態が解除された後は上記クロック信号ＣＬＫに同期動作する。このとき、受信切替部１０４の制御によって、ＲＦ部６２からの受信信号ＲｘＤがマルチプレクサ８７によって選択的にＲＦインタフェース７６に入力される。このようにＩＣカードケーブル１３及びＲＦ部６２を介して取り込まれたリセット信号ＲＥＳ、及びクロック信号ＣＬＫがＣＰＵ６１１に伝達され、また、ＲＦ部６２からの受信信号ＲｘＤがＲＦインタフェース７６に入力されることにより、上記ステップＳ１７の非接触ＲＦＩ／Ｆエミュレータテストが可能とされる。
【００７０】
次に、上記リセット・クロック制御部８９における第２の制御について説明する。この第２の制御は、Ｖｄｄモニタ７２のモニタ結果に基づいて行われる。
【００７１】
Ｖｄｄモニタ７２において、高電位側電源Ｖｄｄのレベルがモニタされ、この高電位側電源Ｖｄｄのレベルが、所定のしきい値レベルよりも高い場合には、リセット・クロック制御部８９の制御により、非接触有線Ｉ／Ｆケーブル１５を介して取り込まれたリセット信号ＣＬ＿ＲＥＳ及びクロック信号ＣＬ＿ＣＬＫ、又はＩＣカードケーブル１３及びＲＦ部６２を介して取り込まれたリセット信号ＲＥＳ及びクロック信号ＣＬＫが選択的にＣＰＵ６１１にで伝達される。しかしながら、Ｖｄｄモニタ７２でのレベルモニタにおいて、高電位側電源Ｖｄｄのレベルが、所定のしきい値レベルよりも低い場合には、リセット・クロック制御部８９からの選択制御信号ＲＥＳＳＥＬ，ＣＬＫＳＥＬにより、マルチプレクサ８８，９０の選択状態が切替られ、エミュレータ内部で生成されたリセット信号ＥＭＬＲＥＳ，ＥＭＬＣＬＫが選択的にＣＰＵ６１１に伝達される。このような切替は、特にＩＣカードケーブル１３を介して非接触ＲＦＩ／Ｆエミュレーションテストを行う場合に有効とされる。以下、その場合の具体例について説明する。
【００７２】
図１１には、上記エミュレータ本体１２の基本動作状態の遷移が示される。
【００７３】
ホストコンピュータ１１からエミュレータ本体１２にダウンロードされたユーザプログラムは、ホストコンピュータ１１からの実行コマンド入力によって実行状態になる。図１１（Ａ）に示されるようにＩＣカードケーブル１３のカード形状基板１３ＢがＩＣカードリーダ・ライタ１４と離れているために、Ｖｄｄモニタ７２でモニタされる高電位側電源電圧Ｖｄｄがしきい値Ｖｔｈより低い場合には、リセット・クロック制御部８９において内部リセット信号ＥＭＬＲＥＳが選択される。このとき、内部リセット信号ＥＭＬＲＥＳは、ローレベルとされ、それにより、マイクロコンピュータ部６１はリセットされたままの状態とされる。
【００７４】
一方、図１１（Ｂ）に示されるようにＩＣカードケーブル１３のカード形状基板１３ＢがＩＣカードリーダ・ライタ１４に近づき、ＲＦ部６２から出力された電圧Ｖｄｄが、しきい値Ｖｔｈを越えたことがＶｄｄモニタ７２によって検出された場合には、ＲＦ部６２から伝達されたリセット信号ＲＥＳ及びクロック信号ＣＬＫが、それぞれＲＥＳＩＮ及びＣＬＩＮとしてＣＰＵ６１１に供給される。そして、ＲＦ部６２から伝達されたリセット信号ＲＥＳＩＮがハイレベルにされると、マイクロコンピュータ部６１において開発中のユーザプログラムの実行が開始される。このプログラム実行状態はトレース・ブレーク制御回路７１に取り込まれ、トレース及びブレーク処理が行われる。
【００７５】
また、図１１（Ｃ）に示されるようにＩＣカードケーブル１３のカード形状基板１３ＢがＩＣカードリーダ・ライタ１４から離れ、ＲＦ部６２から出力された電圧ＶｄｄＯＵＴが、しきい値Ｖｔｈ以下となったことが、Ｖｄｄモニタ７２によって検出された場合には、リセット・クロック制御部８９によって、リセット信号ＲＥＳＩＮが内部リセット信号ＥＭＬＲＥＳに切り替えられる。このとき、内部リセット信号ＥＭＬＲＥＳはローレベルとされ、それによりマイクロコンピュータ部６１は、リセット状態にされる。エミュレータ本体１２のプログラムブレークコマンドによってプログラムが実行状態から停止状態に移行すると、リセット・クロック制御部８９は、クロック信号ＣＬＫＩＮを、ＣＬＫＯＵＴからエミュレータ内部クロック信号ＥＭＬＣＬＫに切り替えてそれをＣＰＵ６１１に伝達する。これにより、ＣＰＵ６１１では、ＲＦ部６２を介してクロック信号が供給されないにもかかわらず、上記エミュレータ内部クロック信号に基づいてコマンド処理プログラムを実行することができる。この状態は、図１１（Ｄ）に示されるように、ＩＣカードケーブル１３のカード形状基板１３ＢがＩＣカードリーダ・ライタ１４から離れ、ＲＦ部６２から出力された電圧ＶｄｄＯＵＴが、しきい値Ｖｔｈ以下となっている限り持続される。
【００７６】
このようにＩＣカードケーブル１３のカード形状基板１３ＢがＩＣカードリーダ・ライタ１４と離れている状態から、ＩＣカードケーブル１３のカード形状基板１３ＢがＩＣカードリーダ・ライタ１４に近づき、そして再び、ＩＣカードケーブル１３のカード形状基板１３ＢがＩＣカードリーダ・ライタ１４から離れた場合の一連の処理により、実際に非接触ＩＣカード５０をＩＣカードリーダ・ライタ１４にかざした時の環境をエミュレータシステム１６において再現することにより、実機に則したエミュレーションが可能になる。
【００７７】
次に、図１におけるステップ２１のＩＣサンプルテスト環境について説明する。
【００７８】
上記ＩＣサンプルテストにおいては、図１３に示されるように、ＤＩＰパッケージに入ったサンプルチップ８を搭載可能なＤＩＰパッケージ用ＩＣソケット１２Ａを備えたボード１２が用いられる。このＤＩＰパッケージ用ＩＣソケット１２Ａを備えたボード１２は、ＩＣカードケーブル１３におけるケーブル部１３Ａの他端にコネクタ等によって着脱自在とされる。ＤＩＰパッケージに入ったサンプルチップ８が上記ボード１２のＤＩＰパッケージ用ＩＣソケット１２Ａに装着された状態で、カード形状基板１３ＢをＩＣカードリーダ・ライタ１４に近づけることによって、サンプルチップ８で開発中のユーザプログラムを実行させることができ、それによってＩＣサンプルテストを行うことができる（Ｓ２１）。
【００７９】
このようにＤＩＰパッケージに入ったサンプルチップ８を搭載可能なＤＩＰパッケージ用ＩＣソケット１２Ａを備えたボード１２が、ＩＣカードケーブル１３に結合されることにより、このＩＣカードケーブル１３におけるカード形状基板１３Ｂに実チップが搭載されていなくても、開発中のユーザプログラムを実行させてその動作を確認することができる。
【００８０】
上記の例によれば、以下の作用効果を得ることができる。
【００８１】
（１）電波によってＩＣカードリーダ・ライタ１４に非接触状態で結合可能なアンテナコイル１３Ｃを有するＩＣカードケーブル１３と、このＩＣカードケーブル１３を介してマイクロコンピュータ用ユーザプログラムのエミュレーションを可能とするエミュレータ本体１２とを具備するエミュレータシステム１６によれば、上記ＩＣカードケーブル１３にＲＦ部を追加することなく、ＩＣカードリーダ・ライタ１４に非接触状態で結合させることができ、そのような結合状態により、実機（ＩＣカード５０）に則したエミュレーションが可能となる。
【００８２】
（２）また、非接触有線Ｉ／Ｆケーブル１５を用いるとき、この非接触有線Ｉ／Ｆケーブル１５は、非接触状態での信号のやり取りに関する所定の非接触プロトコルに準拠した信号を伝達可能な導電ラインを介して上記ＩＣカードリーダ・ライタ１４に結合可能であることから、ＩＣカードケーブル１３が存在しない場合においても、この非接触有線Ｉ／Ｆケーブル１５を使用することによって、上記ＩＣカードリーダ・ライタ１４に結合させることができる。このとき、非接触状態での信号のやり取りに関する所定の非接触プロトコルに準拠した信号をやり取りするようになっているため、ＩＣカードケーブル１３が存在しないにもかかわらず、実機に則したエミュレーションが可能となる。
【００８３】
ＩＣカード５０の仕様との関係で上記アンテナコイルのチューニングが済んでいる場合には、上記第１ケーブルを介して上記マイクロコンピュータ用ユーザプログラムのエミュレーションを行い、また、上記ＩＣカードの仕様との関係で上記アンテナコイルのチューニングが済んでいない場合には、上記第２ケーブルを介して上記エミュレータ本体が上記ＩＣカードリーダ・ライタに結合された状態で上記マイクロコンピュータ用ユーザプログラムのエミュレーションを行うようにすることにより、上記アンテナコイルのチューニングが済んでいる場合でもそれが済んでいない場合でも、実機（ＩＣカード５０）に則したエミュレーションが可能となる。
【００８４】
（３）上記エミュレータ用マイクロコンピュータ７０は、上記ＩＣカードケーブル１３における上記アンテナコイル１３Ｃを介して電波の送受信を可能とするＲＦ部６２と、上記ＲＦ部６２を介して行われるデータ入出力のプロトコル制御を行うためのＲＦインタフェース部７６と、上記非接触有線Ｉ／Ｆインタフェースケーブル１５と、上記ＲＦ部６２とを選択的に上記ＲＦインタフェース部７６に結合させるためのマルチプレクサ８７とを含めることにより、データ入出力のインタフェース切替を適切に行うことができるので、そのようなエミュレータシステム１６を使うことで、実機に則したエミュレーションを容易に行うことができる。
【００８５】
（４）エミュレータ用マイクロコンピュータ７０は、演算処理のための中央処理装置６１１と、ＩＣカードケーブル１３におけるアンテナコイル１３Ｃを介して電波の送受信を可能とするＲＦ部６２と、上記ＲＦ部６２を介して行われるデータ入出力のプロトコル制御を行うためのＲＦインタフェース部７６と、上記非接触有線Ｉ／Ｆケーブル１５と、上記ＲＦ部６２とを選択的に上記ＲＦインタフェース部７６に結合させるためのマルチプレクサ８７と、上記非接触有線Ｉ／Ｆケーブル１５を介して伝達されたクロック信号ＣＬ＿ＣＬＫと、上記ＩＣカードケーブル１３を及び上記ＲＦ部６２を介して伝達されたクロック信号ＣＬＫとを選択的に上記ＣＰＵ６１１に伝達するためのマルチプレクサ９０と、上記非接触型有線Ｉ／Ｆケーブル１５を介して伝達されたリセット信号ＣＬ＿ＲＥＳと、上記ＩＣカードケーブル１３を及び上記ＲＦ部６２を介して伝達されたリセット信号ＲＥＳとを選択的に上記ＣＰＵ６１１に伝達するためのマルチプレクサ８８とを含めることができ、それによって、非接触有線Ｉ／Ｆケーブル１５と、ＩＣカードケーブル１３とのインタフェース切替を適切に行うことができるので、そのようなエミュレータシステム１６を使用することで、実機に則したエミュレーションを容易に行うことができる。
【００８６】
（５）高電位側電源Ｖｄｄのレベルを検出するためのＶｄｄ検出モニタ７２と、このＶｄｄ検出モニタ７２の検出結果に基づいて、エミュレータ内部で生成されたクロック信号ＥＭＬＣＬＫ及びリセット信号ＥＭＬＲＥＳを選択的にＣＰＵ６１１に供給するためのリセット・クロック制御部８９とを含めることができ、その場合には、上記ＩＣカードケーブル１３が、ＩＣカードリーダ１４から離れたために、ＲＦ部６２を介して上記ＣＰＵ６１１にクロック信号ＣＬＫが供給されないにもかかわらず、上記エミュレータ内部クロック信号ＥＭＬＣＬＫに基づいてコマンド処理プログラムを実行することができるので、そのようなエミュレータシステム１６を使用することで、実機に則したエミュレーションを効率良く行うことができる。
【００８７】
（６）エミューションステップ（Ｓ１７，Ｓ２９）の後に製造されたＩＣサンプル８を用いてＩＣサンプルテストを行うＩＣサンプルテストステップ（Ｓ２１）を有し、上記ＩＣサンプルテストステップは、上記ＩＣサンプル８を搭載可能なソケット１２Ａを搭載したボード１２を上記ＩＣカードケーブルに結合させた状態で行うことにより、例えばサンプルチップ８を搭載可能なＩＣソケット１２Ａを備えたボード１２が、ＩＣカードケーブル１３に結合されることにより、このＩＣカードケーブル１３におけるカード形状基板１３Ｂに実チップが搭載されていなくても、開発中のユーザプログラムを実行させてその動作を確認することができるため、ＩＣサンプルテストを効率良く行うことができる。
【００８８】
以上本発明者によってなされた発明を具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【００８９】
例えば、ＩＣカードケーブル１３は、図６乃至図９に示されるように様々な形態をとることができる。
【００９０】
図６に示されるＩＣカードケーブル１３は、カード形状基板１３Ｂにアンテナコイル１３Ｃの端部から延長された導電ラインがケーブル部１３Ａに形成されるだけであり、コンタクトパターン１３Ｅや実チップ、エミュレータ用チップなどがカード形状基板１３Ｂに搭載されていないため、それらとエミュレータ本体１２とを結合させるための導電ラインの形成が不要とされるから、ＩＣカードケーブル１３の構成、特にケーブル部１３Ａの製造が容易であるため、ＩＣカードケーブル１３を安価に提供することができる。また、カード形状基板１３Ｂにコンタクトパターン１３Ｅが形成されないため、図６に示されるＩＣカードケーブル１３を使用する限りにおいて、図１０に示される切替回路群１０１、接触アナログ部１０２、及び接触ＩＯ部１０３などは不要とされる。
【００９１】
図７に示されるＩＣカードケーブル１３では、ＩＣカードケーブル１３のカード形状基板１３Ｂに、実チップが搭載されている。この場合、実チップ１３Ｄにおいては、ＲＦ部（図１０におけるＲＦ部６１に相当するもの）のみ動作させる。実チップ１３ＤにおけるＲＦ部６１が動作されるとき、エミュレータ本体１２におけるエミュレータ用マイクロコンピュータ７０においては、ＲＦ部６２を省略することができる。この場合、ケーブル部１３Ａに設けられた導電ラインによって、実チップ１３Ｄと、エミュレータ本体１２内のエミュレータ用マイクロコンピュータ７０とが結合される。
【００９２】
図８に示されるＩＣカードケーブル１３では、電波による送受信を可能とするためのＲＦチップがカード形状基板１３Ｂに搭載されている。このため、エミュレータ本体１２におけるエミュレータ用マイクロコンピュータ７０においては、ＲＦ部６２を省略することができる。この場合、ケーブル部１３Ａに設けられた導電ラインによって、実チップ１３Ｄと、エミュレータ本体１２内のエミュレータ用マイクロコンピュータ７０とが結合される。
【００９３】
図９に示される構成では、ＩＣカードケーブル１３のカード形状基板１３Ｂに、エミュレータ用マイクロコンピュータ７０が搭載されている。エミュレータ用マイクロコンピュータ７０の内部構成は図１０に等しい。この場合、ユーザインタフェースが実際のＩＣカードと同一になる。
【００９４】
以上の説明では主として本発明者によってなされた発明をその背景となった利用分野である電子マネー等のカードシステム開発に適用したが、本発明はそれに限定されるものではなく、様々なＩＣカードのシステム開発に広く適用することができる。
【００９５】
本発明は、少なくともユーザプログラムのテストステップを含むことを条件に適用することができる。
【００９６】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。
【００９７】
すなわち、エミュレータ用マイクロコンピュータが、開発すべきターゲットプログラムを実行することにより、アンテナコイルを有するＩＣカードケーブルを介して電波によりターゲットシステムにインタフェースされることにより、上記ＩＣカードケーブルにＲＦ部を追加することなく、ＩＣカードリーダ・ライタに非接触状態で結合させることができ、そのような結合状態により、実機に則したエミュレーションが可能となる。
【００９８】
非接触有線インタフェースケーブルは、非接触状態での信号のやり取りに関する所定の非接触プロトコルに準拠した信号を伝達可能な導電ラインを介して上記ＩＣカードリーダ・ライタに結合可能であることから、ＩＣカードケーブルが存在しない場合においても、この非接触有線インタフェースケーブルを使用することによって、上記ＩＣカードリーダ・ライタに結合させることができ、その場合の結合において、非接触状態での信号のやり取りに関する所定の非接触プロトコルに準拠した信号をやり取りするようになっているため、ＩＣカードケーブルが存在しないにもかかわらず、実機に則したエミュレーションが可能となる。
【００９９】
ＩＣカードの仕様との関係で上記アンテナコイルのチューニングが済んでいる場合には、上記第１処理により、アンテナコイルを有するＩＣカードケーブルを介して電波によりターゲットシステムにインタフェースされ、上記ＩＣカードの仕様との関係で上記アンテナコイルのチューニングが済んでいない場合には、第２処理により非接触有線インタフェースケーブルを介してターゲットシステムにインタフェースされる。これにより、上記アンテナコイルのチューニングが済んでいる場合でもそれが済んでいない場合でも、実機に則したエミュレーションが可能となる。
【０１００】
アンテナコイルを有するＩＣカードケーブルを介して電波によりターゲットシステムにインタフェースするためのＲＦ部と、上記非接触有線インタフェースケーブルとを、上記ＲＦ部を介して行われるデータ入出力のプロトコル制御のためのＲＦインタフェース部に、選択的に結合させるための第１選択処理と、上記非接触有線インタフェースケーブルを介して伝達された第１クロック信号と、上記ＩＣカードケーブルを及び上記ＲＦ部を介して伝達された第２クロック信号とを選択的に上記ＣＰＵに伝達するための第２選処理と、上記非接触型有線インタフェースケーブルを介して伝達された第１リセット信号と、上記ＩＣカードケーブルを及び上記ＲＦ部を介して伝達された第２リセット信号とを選択的に上記ＣＰＵに伝達するための第３選択処理とを含めることができ、それによれば、上記第３選択処理によりデータ入出力のインタフェース切替を適切に行うことができるので、実機に則したエミュレーションを容易に行うことができる。
【０１０１】
高電位側電源のレベルを検出するための高電位側電源検出処理と、上記高電位側電源検出処理での検出結果に基づいて、エミュレータ内部で生成されたクロック信号及びリセット信号を選択的に上記中央処理装置に供給するための制御処理とを含めることができる。その場合には、上記ＩＣカードケーブルが、ＩＣカードリーダから離れたために、ＲＦ部を介して上記中央処理装置にクロック信号が供給されないにもかかわらず、上記エミュレータ内部クロック信号に基づいてコマンド処理プログラムを実行することができるので、ソフトウェアデバッグを効率良く行うことができる。
【０１０２】
サンプルチップを搭載可能なＩＣソケットを備えたボードが、ＩＣカードケーブルに結合されることにより、このＩＣカードケーブルにおけるカード形状基板に実チップが搭載されていなくても、開発中のユーザプログラムを実行させてその動作を確認することができるため、ＩＣサンプルテストを効率良く行うことができる。
【図面の簡単な説明】
【図１】本発明にかかるプログラムの開発方法の一例であるＩＣカードシステム開発のフローチャートである。
【図２】非接触ＩＣカードの平面図及び主要部の切断断面図である。
【図３】上記非接触ＩＣカードに含まれるマイクロコンピュータと、このマイクロコンピュータにおけるＲＦ部の構成例ブロック図である。
【図４】ＩＣカードエミュレータシステムを含むプログラム開発システムの構成例説明図である。
【図５】ＩＣカードエミュレータシステムを含むプログラム開発システムの構成例説明図である。
【図６】上記ＩＣカードエミュレータシステムにおけるエミュレータ本体とＩＣカードケーブルとの接続関係説明図である。
【図７】上記ＩＣカードエミュレータシステムにおけるエミュレータ本体とＩＣカードケーブルとの接続関係説明図である。
【図８】上記ＩＣカードエミュレータシステムにおけるエミュレータ本体とＩＣカードケーブルとの接続関係説明図である。
【図９】上記ＩＣカードエミュレータシステムにおけるエミュレータ本体とＩＣカードケーブルとの接続関係説明図である。
【図１０】上記エミュレータ本体の構成例ブロック図である。
【図１１】上記エミュレータ本体の基本動作の状態遷移説明図である。
【図１２】非接触ＩＣカードにおける方式の違いの説明図である。
【図１３】ＤＩＰパッケージに入ったチップサンプルを搭載して動作テストを行う場合の説明図である。
【図１４】上記ＩＣカードエミュレータシステムにおけるエミュレータ本体とＩＣカードケーブルとの関係説明図である。
【図１５】上記ＩＣカードエミュレータシステムにおける操作画面の一例説明図である。
【図１６】ＩＣカードの種類についての説明図である。
【図１７】上記ＩＣカードにおける接触型と非接触型との説明図である。
【符号の説明】
１１  ホストコンピュータ
１２  エミュレータ本体
１３  ＩＣカードケーブル
１４  ＩＣカードリーダ・ライタ
１６  エミュレータシステム
６２  ＲＦ部
７０  エミュレータ用マイクロコンピュータ
７１  トレース・ブレーク制御回路
７２  Ｖｄｄモニタ
７６  ＲＦインタフェース
７８  不揮発性メモリ
７９  ＲＯＭ
８０  ＲＡＭ
８９  リセット・クロック制御部
１０１  切替回路群
１０３  接触ＩＯ部
１０４  受信切替部
１０５  タイプ切替部
２００  エミュレーション制御部
６１１  ＣＰＵ
６１４  周辺モジュール
【図１】
0004442744.tif 000002
【図２】
0004442744.tif 000003
【図３】
0004442744.tif 000004
【図４】
0004442744.tif 000005
【図５】
0004442744.tif 000006
【図６】
0004442744.tif 000007
【図７】
0004442744.tif 000008
【図８】
0004442744.tif 000009
【図９】
0004442744.tif 000010
【図１０】
0004442744.tif 000011
【図１１】
0004442744.tif 000012
【図１２】
0004442744.tif 000013
【図１３】
0004442744.tif 000014
【図１４】
0004442744.tif 000015
【図１５】
0004442744.tif 000016
【図１６】
0004442744.tif 000017
【図１７】
0004442744.tif 000018