(57)【特許請求の範囲】
【請求項１】
国際標準化機構7816（ISO 7816）プロトコルに従うISOモード、及び非ISOのプロトコルに従う非ISOモードで動作するマルチモード集積回路（IC）において、このマルチモードICが、
マイクロプロセッサと；
該マイクロプロセッサに接続され、
電圧源パッドと、
接地パッドと、
ISO 7816プロトコルに従う第１組のパッドと、
非ISOのプロトコルに従う第２組のパッドと
を具えた外部インタフェースと；
前記第１組のパッドのうちの１つのパッド上の信号にもとづいて、前記マルチモードICを、前記ISOモード及び前記非ISOモードのうちの一方のモードに構成するモード構成回路と
を具えていることを特徴とするマルチモードIC。
【請求項２】
前記モード構成回路が、前記マルチモードICを、前記ISOモード及び前記非ISOモードのうちの一方のモードで動作して他方のモードを無効にすべく構成することを特徴とする請求項１に記載のマルチモードIC。
【請求項３】
前記マルチモードICを前記非ISOモードに構成した際には、前記第１組のパッドを無効にして、前記マルチモードICを前記ISOモードに構成した際には、前記第２組のパッドを無効にすることを特徴とする請求項２に記載のマルチモードIC。
【請求項４】
前記モード構成回路が、
前記第１組のパッドのうちの１つのパッドに接続したモード検出器と；
前記マイクロプロセッサに接続されて、前記モード検出器からの出力を受信するラッチ回路と
を具えていることを特徴とする請求項１に記載のマルチモードIC。
【請求項５】
さらに、
前記ラッチ回路に接続されてモード構成指標を記憶する制御レジスタを具えていることを特徴とする請求項４に記載のマルチモードIC。
【請求項６】
前記電圧源パッドに接続されて前記ISOモード及び前記非ISOモードの電源電圧を検出する電圧検出器を具えていることを特徴とする請求項４に記載のマルチモードIC。
【請求項７】
前記非ISOモードがユニバーサル・シリアルバス（USB）モードを含み、前記第２組のパッドが、USBプロトコルに従うD-プラス・パッド及びD-マイナス・パッドを含むことを特徴とする請求項４に記載のマルチモードIC。
【請求項８】
前記第１組のパッドが、ISO 7816プロトコルに従うクロック・パッド、リセット・パッド、及び入力／出力パッドを含むことを特徴とする請求項４に記載のマルチモードIC。
【請求項９】
前記第１組のパッドが、ISO 7816プロトコルに従うクロック・パッド、リセット・パッド、可変電圧源パッド、及び入力／出力パッドを具えて、前記モード検出器が、前記第１組のパッドのうちの１つのパッドに接続したプルアップ抵抗を具えていることを特徴とする請求項４に記載のマルチモードIC。
【請求項１０】
国際標準化機構7816（ISO 7816）プロトコルに従うISOモード、及び非ISOのプロトコルに従う非ISOモードで動作するマルチモード・スマートカードにおいて、
このマルチモード・スマートカードが、
カード本体と；
該カード本体によって保持されるマルチモード集積回路（IC）とを具えて、
前記マルチモードICが、
外部インタフェースと、
前記マルチモードICを、前記ISOモード及び前記非ISOモードのうちの一方のモードに構成するモード構成回路とを具えて、
前記外部インタフェースが、
電圧源パッドと、
接地パッドと、
ISO 7816プロトコルに従う第１組のパッドと、
非ISOのプロトコルに従う第２組のパッドとを具えて、
前記モード構成回路が、
前記第１組のパッドのうちの１つのパッドに接続したモード検出器と、
該モード検出器に接続したラッチ回路とを具えている
ことを特徴とするマルチモード・スマートカード。
【請求項１１】
さらに、
前記ラッチ回路に接続されてモード構成指標を記憶する制御レジスタを具えていることを特徴とする請求項１０に記載のマルチモード・スマートカード。
【請求項１２】
さらに、
前記電圧源パッドに接続されて前記ISOモード及び前記非ISOモードのうちの１つのモードの電源電圧を検出する電圧検出器を具えていることを特徴とする請求項１０に記載のマルチモード・スマートカード。
【請求項１３】
前記非ISOモードが、ユニバーサル・シリアルバス（USB）モードを含み、前記第２組のパッドが、USBプロトコルに従うD-プラス・パッド及びD-マイナス・パッドを含むことを特徴とする請求項１０に記載のマルチモード・スマートカード。
【請求項１４】
前記モード構成回路が前記マルチモードICを、前記ISOモード及び前記非ISOモードのうちの一方のモードで動作して他方のモードを無効にすべく構成することを特徴とする請求項１０に記載のマルチモード・スマートカード。
【請求項１５】
前記マルチモードICを前記非ISOモードに構成した際には、前記第１組のパッドを無効にして、前記マルチモードICを前記ISOモードに構成した際には、前記第２組のパッドを無効にすることを特徴とする請求項１４に記載のマルチモード・スマートカード。
【請求項１６】
前記第１組のパッドが、ISO 7816プロトコルに従うクロック・パッド、リセット・パッド、及び入力／出力パッドを含むことを特徴とする請求項１０に記載のマルチモード・スマートカード。
【請求項１７】
前記第１組のパッドが、ISO 7816プロトコルに従うクロック・パッド、リセット・パッド、可変電圧源パッド、及び入力／出力パッドを含み、前記モード検出器が、前記第１組のパッドのうちの１つのパッドに接続したプルアップ抵抗を具えていることを特徴とする請求項１０に記載のマルチモード・スマートカード。
【請求項１８】
国際標準化機構7816（ISO 7816）プロトコルに従うISOモード、及び非ISOのプロトコルに従う非ISOモードで動作するマルチモード・スマートカード・システムにおいて、このマルチモード・スマートカード・システムが、
マルチモード・スマートカードと、
前記マルチモード・スマートカードを読み取る非ISO準拠のスマートカード・リーダとを具えて、
前記マルチモード・スマートカードが、
外部インタフェースと、
前記マルチモード・スマートカードを、前記ISOモード及び前記非ISOモードのうちの一方のモードに構成するモード構成回路とを具えて、
前記外部インタフェースが、
電圧源パッドと、
接地パッドと、
ISO 7816プロトコルに従う第１組のパッドと、
非ISOのプロトコルに従う第２組のパッドとを具えて、
前記モード構成回路が、
前記第１組のパッドのうちの１つのパッドに接続したモード検出器と、
該モード検出器に接続したラッチ回路とを具えて、
前記スマートカード・リーダが、
複数の接点を有するスマートカード・インタフェースと、
前記第１組のパッドのうちの１つのパッドに接続するモード指示回路とを具えて、
前記複数の接点のそれぞれが、前記電圧源パッド、前記接地パッド、及び非ISOのプロトコルに従う前記第２組のパッドに適合して、
前記モード指示回路が、前記モード構成回路の前記モード検出器に非ISOモードの指示信号を供給する
ことを特徴とするマルチモード・スマートカード・システム。
【請求項１９】
前記モード構成回路がさらに、前記ラッチ回路に接続されてモード構成指標を記憶する制御レジスタを具えていることを特徴とする請求項１８に記載のマルチモード・スマートカード・システム。
【請求項２０】
前記モード構成回路がさらに、前記電圧源パッドに接続されて前記ISOモード及び前記非ISOモードの電源電圧を検出する電圧検出器を具えていることを特徴とする請求項１８に記載のマルチモード・スマートカード・システム。
【請求項２１】
前記非ISOモードがユニバーサル・シリアルバス（USB）モードを含み、前記第２組のパッドが、USBプロトコルに従うD-プラス・パッド及びD-マイナス・パッドを含むことを特徴とする請求項１８に記載のマルチモード・スマートカード・システム。
【請求項２２】
前記モード構成回路が、前記マルチモードICを、前記ISOモード及び前記非ISOモードのうちの一方のモードで動作して他方のモードを無効にすべく構成することを特徴とする請求項１８に記載のマルチモード・スマートカード・システム。
【請求項２３】
前記マルチモードICを前記非ISOモードに構成する際には、前記第１組のパッドを無効にして、前記マルチモードICを前記ISOモードに構成する際には、前記第２組のパッドを無効にすることを特徴とする請求項２２に記載のマルチモード・スマートカード・システム。
【請求項２４】
前記第１組のパッドが、ISO 7816プロトコルに従うクロック・パッド、リセット・パッド、及び入力／出力パッドを含むことを特徴とする請求項１８に記載のマルチモード・スマートカード・システム。
【請求項２５】
前記第１組のパッドが、ISO 7816プロトコルに従うクロック・パッド、リセット・パッド、可変電圧源パッド、及び入力／出力パッドを含み、前記モード検出器が、前記第１組のパッドに接続したプルアップ抵抗を具えていることを特徴とする請求項１８に記載のマルチモード・スマートカード・システム。
【請求項２６】
マルチモード集積回路（IC）を、国際標準化機構7816（ISO 7816）プロトコルに従うISOモード、及び非ISOのプロトコルに従う非ISOモードで動作させる方法であって、前記マルチモードICが、電圧源パッド、接地パッド、ISOプロトコルに従う第１組のパッド、及び非ISOのプロトコルに従う第２組のパッドを有する外部インタフェースを具えたマルチモードICの動作方法において、
前記ISOモードの状態及び前記非ISOモードの状態のうちの一方が、前記第１組のパッドのうちの１つのパッド上に存在するか否かを検出するステップと；
前記ISOモードの状態を検出した際に、前記マルチモードICを前記ISOモードに構成して、前記第２組のパッドを無効にするステップと；
前記非ISOモードの状態を検出した際に、前記マルチモードICを前記非ISOモードに構成して、前記第１組のパッドを無効にするステップと
を具えていることを特徴とするマルチモードICの動作方法。
【請求項２７】
前記ISOモードの状態及び前記非ISOモードの状態のうちの一方が、前記第１組のパッドのうちの１つのパッド上に存在するか否かを検出するステップが、前記マルチモードICのパワーオン・リセット中に、前記ISOモードの状態及び前記非ISOモードの状態のうちの一方が存在するか否かを検出するステップを具えていることを特徴とする請求項２６に記載の方法。
【請求項２８】
前記非ISOモードの状態を検出した際に、前記電圧源パッド上に非ISOモードの電圧を検出することによって、前記非ISOモードを確認するステップを具えていることを特徴とする請求項２６に記載の方法。
【請求項２９】
前記第１組のパッドが、ISO 7816プロトコルに従うリセット・パッド、クロック・パッド、及び入力／出力パッドを具えていることを特徴とする請求項２６に記載の方法。
【請求項３０】
前記ISOモードの状態または前記非ISOモードの状態が存在するか否かを検出するステップが、ISO準拠のインタフェース及び非ISO準拠のインタフェースのうちの一方からの信号が前記クロック・パッド上に存在するか否かを検出するステップを具えていることを特徴とする請求項２９に記載の方法。
【請求項３１】
前記第１組のパッドが、ISO 7816プロトコルに従うクロック・パッド、リセット・パッド、可変電圧源パッド、及び入力／出力パッドを含むことを特徴とする請求項２６に記載の方法。
【請求項３２】
前記非ISOのプロトコルが、ユニバーサル・シリアルバス（USB）プロトコルを含むことを特徴とする請求項２６に記載の方法。
【請求項３３】
さらに、
前記マルチモードICが、前記ISOモードに構成されているか、あるいは前記非ISOモードに構成されているかを示すモード構成指標を記憶するステップを具えていることを特徴とする請求項２６に記載の方法。
【発明の詳細な説明】
【０００１】
（発明の分野）
本発明は情報処理及び記憶に関するものであり、特にスマートカードシステムに関するものである。
【０００２】
（発明の背景）
スマートカード（SC：Smart card）は、埋込み集積回路（IC：Integrated Circuit）を有するプラスチック・カードである。このＩＣは、関連するメモリを有する論理回路か、あるいは関連するメモリ及びソフトウエアを有するマイクロコントローラか、あるいは関連するメモリ及びソフトウエアを有し、カスタム・ブロックに結合したマイクロコントローラとすることができる。
【０００３】
ICによって提供される演算力を活用するために、SCはパッケージ技術を最大限利用する。ダイの大きさは1mm2から30mm2まで変化する。ダイの大きさは、SCのプラスチックの性質に伴う機械的な特性によって限定される。ICはリードフレームに装着され、そしてワイヤ・ボンディング技術を用いてICパッドをリードフレーム接点に接続する。ポッティング及び他の強化方法によって、ICを化学的及び機械的ストレスから保護する。接点はカードの１つの側面に位置して、その数は８個に限定される。基本的には、SCはシリアル・プロトコルを用いてSCリーダ（読取り器）とのやり取りを行う。SCの機械的及び電気的仕様のすべてが、国際標準化機構（ISO：International Standardization Organization）によって公表されている。ISO 7816-X規格が、簡単かつ量産性のある磁気ストライプ（帯）カードがSCに進展することを可能にした。SCは、ICの複雑性次第で、プリペイド会計、暗号化方式、PIN（Personal Identifier Number：個人識別番号）コードまたは生物学的測定を用いた個人認証を行うことができ、そしてjavaスクリプトを実行して、少数の名前を挙げることができる。
【０００４】
ISOドキュメントのISO 7816-1（物理特性）、ISO 7816-2（コンテンツの大きさ及び所在位置）、ISO 7816-3（電気信号及び伝送プロトコル）、及びISO 7816-10（電気信号及び同期カード用のリセットに対する応答）を、参考文献として本明細書に含める。
【０００５】
今日では、SCが関係する何らかの取引を実行する以前に、すべてのSCリーダがインフラストラクチャ（基盤）によって認知されなければならない。インフラストラクチャとは、SCが関係する応用（アプリケーション）を実行するものである。SCリーダはSCを想定している。SCが情報をSCリーダに送る場合でも、あるいはその逆でも、SCがSCリーダ内の定位置にあることが検出されるまでは、SCとSCリーダとの間の半二重プロトコルを開始することができない。インフラストラクチャは、公衆電話ではプリペイド・カードについての、販売時点管理（POS：Point of Sales）端末及び現金自動預払機（ATM：Automatic Tellers Machine）では銀行カードについての、セットトップ・ボックスでは有料テレビ放送（ペイTV）の番組提供者についての、そしてGSM（Global System for Mobile：欧州の移動電話方式）端末用のSIM（Subscriber Identification Module：GSM携帯電話機用ICカード）では無線通信オペレータについての認証あるいは取引を管理する。SIMカードを除いた他のすべての応用は、物理的センサを用いてSCを検出する。このセンサは、SCが定位置にある際に、即ちSCのリードフレーム接点がSCリーダの接点に合致できる際に、このことをSCリーダに知らせる。２種類のSCリーダ接点を用いることができ、即ち、定位置に留まり、SCがSCリーダに挿入された際に接点の弾性によってSC上を摺動可能な接点か、あるいは、一旦カードを定位置で検出すると、下降してそのリードフレーム接点に接触する可動接点とすることができる。SCリーダが、SCが定位置にあることを確認すると、SCリーダの都合に応じてパワーアップ（起動）シーケンスを開始することができる。パワーアップ・シーケンス後には、まずSCリーダがクロックをSCカードに供給し、そしてSCリーダのリセット信号を発行する。そしてSCは、記憶しているオペレーティング・システム（OS）を実行することができる。SIMカードは、電源オフ状態で一度定位置に置くだけで、定位置に置いた後に定常的に使用するという点で特別なものである。
【０００６】
20年以上前にSC技術が開発されて以来の最初の応用は、公衆電話システムである。この応用で用いるダイの大きさは1mm2未満である。メモリ及び論理回路のみをICに集積している。1999年には、世界中で生産された13億枚のSCの2/3以上をプリペイドSCが占めた。SCリーダは８個の端子のすべてを利用して、異なる世代のSCと適正にインタフェース（整合）する。SCを公衆電話機に挿入すると、電話のインフラストラクチャがSCを認証して、電話機がSCから料金単位を引き落とす。銀行取引用途に開発したSCが公衆電話機で利用可能であっても何の価値もない。公衆電話機は銀行カードから料金単位を引き落とさないが、SCの保有者の勘定として記録する（貸しを作る）。
【０００７】
ＳＣを用いる応用の２番目に大きなものは、銀行産業によって開発された。米国以外の大部分の国では、ATM及びPOSのインフラストラクチャが設置されている。この応用に用いるダイの大きさは約10mm2である。マイクロコントローラ及びこれに関連するメモリ及びソフトウエアをICに集積している。SCリーダは接点を６個まで使用して、異なる世代のSCに適正にインタフェースする。SCをATMまたはPOSに挿入すると、SCの保有者はPINコードで自分自身を認証することを求められる。SCは、所有者がATMから引き出した現金の週単位の残高、最終決算日以来利用者が行った購入の詳細、等のような事柄のいずれも記憶することができる。こうした情報にもとづいて、銀行に電話をかけることなしに、一旦PINが債務者を認証したその場で、認証を発行することができる。最終的には、銀行と事業（ビジネス）とが電話、私設通信ネットワーク、及びいつの日かはインターネットを用いて対等化を行う。対等化を行いつつ、不正なSCのブラックリストをPOSまたはATMに記憶することができる。この方式は、SCで行う金銭取引と同等の取引全体に占める不正のレベルを、カードにICを埋め込まなかった際の0.2％から0.02％にまで低下させることができる。SCを用いた不正のレベルは、通常のクレジット・カードに比べて十分の一まで低減された。
【０００８】
SCを用いる応用の３番目に大きなものは、GSMの製造業者によって開発されてきた。SIMにおいて使用するダイの大きさは約30mm2である。マイクロコントローラ及びこれに関連するメモリ及びソフトウエアをICに集積する。SIMリーダは５個の接点を利用して、SCと適正にインタフェースする。最も巧妙なSCの応用は、GSMにおいてjavaアプレット（javaを用いたアプリケーション言語）を用いてなされている。
【０００９】
現在、パーソナル・コンピュータからアクセスされるインターネットと共に、SCにとって全く新しい市場が出現している。認証及び電子決済はSCが注目される新たな領域である。SCがe-コマース（電子商取引）の促進者となり得る。他の解決策と比べたスマートカードの差異性は、いかなる取引においても通知されることのないPINをメモリ内に有することにある。
【００１０】
現在まで、SCはコンピュータに接続したSCリーダで用いられている。SCと、コンピュータによって実行するアプリケーションとの間のやり取りの支援（サポート）には、２つのプロトコルが関係している。第１のプロトコルはISO 7816-3に準拠するものである。この規格は、SCとSCリーダとの間のシリアル・インタフェースについての詳細な要求に応えるものである。リーダはシリアルポート経由、パラレルポート経由でコンピュータに接続し、あるいは第２のプロトコルを用いたユニバーサル・シリアルバス（USB）経由でも接続する。SCリーダは、第１のプロトコルを用いたSCと第２のプロトコルを用いたコンピュータとの間の通信を可能にする電子回路及び埋込みソフトウエアを含む。コンピュータに適切なドライバをロードしてSCリーダを支援する。多くの国がPC環境でのSCの使用を開始している。この応用に用いるダイの大きさは、5mm2から30mm2までのあらゆる大きさになり得る。マイクロコントローラ及びこれに関連するメモリ及びソフトウエアを、暗号コントローラと共にICに集積する。時としてバイオセンサ（生物学的センサ）も集積する。SCリーダは少なくとも５個の接点を使用して、SCと適正にインタフェースする。
【００１１】
健康管理（ヘルスケア）、公衆電話、駐車、ロイヤリティ・プログラム、現金決済、クレジット決済のようなすべての取引を可能にする閉じたインフラストラクチャが、世界中で何百万ものISO準拠のSCリーダを使用している。ヨーロッパは1970年代の後期から、こうした技術の開発をリードしてきた。これらの所有的なインフラストラクチャでは、あらゆる単品のSCリーダが、時毎に数多くの取引を担うように設計されている。多くのユーザがSCリーダのコストを分担している。
【００１２】
e-コマース及びインターネット取引の著しい成長が、取引を安全にする必要性（ニーズ）を強調してきた。不正がはびこってきている。虚偽のクレジット・カード番号が使用され、クレジット・カード番号が盗用され、そしてインターネット上の「盗聴」（データ不正取得）方法も十分確立されている。「ドットコム（.com）」会社は、最良のコストパフォーマンス（性能対価格比）を有する装置を探している。SCリーダの価格を下げることができるならば、SCは優秀なやり手となる。
【００１３】
近年、USBが堅固に確立されて、パーソナル・コンピュータ（PC）市場で広く受け入れられている。USBは、「プラグ・アンド・プレイ」の概念をPCの外部の装置に広げる標準的なインタフェースの必要性に応えるべく開発されてきた。このことは、ユーザがPCのケースを開けなければならないか、あるいはPCの電源を外さなければならない、ということをなくして、外部周辺装置を設置（インストール）及び撤去することを可能にした。USBは、使い勝手が良く容易に拡張可能な、低コストで高性能の半二重シリアル・インタフェースを提供する。USBは、２本の線で電源電力を搬送し、他の２本の線でデータを搬送する４本の線の組として見ることができる。現在USBは、ユニバーサル・シリアルバス仕様によって規定され、この仕様は、USB仕様を開発した会社のグループが設立した非営利団体であるUSB Implementers Forum, Inc.が書き上げて統括している。
【００１４】
特に、５章のUSBデータフロー・モデル、７章の電気的仕様、８章のプロトコル層、及び９章のユニバーサル・シリアルバス仕様のUSB装置における枠組は、参考文献として本明細書に含める。コンピュータにおけるUSBの使用がますます広がることによって、SCリーダの製造業者が、自社製品をコンピュータに接続するための、既存のシリアル及びパラレルインタフェースを補うUSBインタフェースを開発するようになった。
【００１５】
現在我々は、従来型（非電子商取引）の会社及び銀行がSC技術を15年以上にわたって使用してきた、という状況にある。他方では、商取引及び銀行取引の活動を強力に拡大するインターネットはSC技術を使用しない。インターネット取引の大部分がPCから行われ、PC製造業者の努力にもかかわらず、PC産業は、ウェブ関係のアプリケーションの特定ニーズ（必要性）に合った費用効果的なSCリーダを各PCにインストールせずにいた。既にSC技術に従事している者と、SC技術から利益を得ようとする者の双方のニーズに応える包括的な解決策を見出すべきである。これら２つの分野は、顧客とサービス提供者（プロバイダ）の最良の利益になるような、共通の認証基盤（プラットフォーム）を共用すべきである。
【００１６】
慣例の取り組みの例は、公開されているPCT出願WO 99/49415、発明の名称"Versatile Interface Smart Card（多機能インタフェースのスマートカード）"に見出すことができる。このシステムは、異なるプロトコルで使用可能なスマートカード・システムを開示したものである。特にこのシステムは、カードと通信している装置のプロトコルを示すモード信号を、非ISO規格の接点のうちの１つに供給する。しかし、スマートカードをパワーアップ（起動）してリセット信号が供給されるまでは、モード信号がチェックされない。換言すれば、スマートカードは既にISO 7816プロトコルで動作しており、モード信号の検出時には、非ISOのプロトコルに切り換えなければならない。
【００１７】
（発明の概要）
以上記述した背景に鑑み、本発明の目的は、２つ以上のプロトコルに従って選択的に動作可能な集積回路を提供することにある。
【００１８】
本発明のさらなる目的は、スマートカードがISO 7816プロトコルを用いたインタフェースと通信しているか、あるいは非ISOのプロトコルを用いたインターフェースと通信しているかを特定することができるスマートカード・システムを提供して、スマートカードをこうしたプロトコルに構成することにある。
【００１９】
これら及び他の目的、そして本発明による特徴及び利点は、国際標準化機構7816（ISO 7816）プロトコルに従うISOモード、及び、ユニバーサル・シリアルバス（USB）プロトコルに従うUSBモードのような非ISOモードで動作するマルチモード（多モード）ICによって提供される。このマルチモードICはマイクロプロセッサ及び外部インタフェースを含む。この外部インタフェースは、電圧源パッド、接地パッド、第１プロトコルに従う第１組のパッド、及び非ISOのプロトコルに従う第２組のパッドを含み、第１組のパッドは例えば、ISO 7816プロトコルに従うリセット・パッド、クロック・パッド、及び入力／出力パッドであり、第２組のパッドは例えば、USBプロトコルに従うＤ−プラス・パッド及びD-マイナス・パッドである。このICは、前記第１組のパッドのうちの１つ、例えばクロックパッドに接続したモード検出器、前記電圧源パッドに接続したUSB電圧検出器、及びスイッチング（切換）ブロックに接続され、前記モード検出器からの出力を受信するラッチ回路を具えたモード構成回路も含む。このICは、前記ラッチ回路に接続されてモード構成指標を記憶する制御レジスタを含むこともできる。
【００２０】
また、非ISOモードがUSBモードであれば、前記ICは、D-プラス・パッド及びD-マイナス・パッドに接続したＵＳＢケーブル検出器を含むことができる。ここでは、前記モード構成回路が前記ICを、ISOモード及びUSBモードのうちの一方のモードで動作して他方のモードを無効にすべく構成して、これにより、スイッチング・ブロックをUSBモードに構成した際にはリセット・パッド、クロック・パッド、及び入力／出力パッドが無効になり、スイッチング・ブロックをISOモードに構成した際には、D-プラス・パッド及びD-マイナス・パッドが無効になるようにする。電源電圧が2.7V〜5.5Vの範囲内にある間にはISOのやり取りが発生し、電源電圧が4.01V〜5.5Vの範囲内にある間にはUSBのやり取りが発生し得るので、電圧検出器を設けて、電圧源パッド上の電源電圧がUSBのやり取りを支援（サポート）可能にすることができる。
【００２１】
こうしたICを用いる、本発明によるシステムは、ISO準拠のリーダ及び非ISO準拠のリーダを具えている。もちろん、ISOプロトコルのリーダは、前記ICのクロック・パッドで必要なクロック信号を供給する。しかし非ISO準拠のリーダは、前記第１組のパッドのうちの１つ、例えばクロック・パッドにモード識別信号を供給する。
【００２２】
本発明による方法は、マルチモードのスマートカードを、国際標準化機構7816（ISO 7816）プロトコルに従うISOモード、及び非ISOのプロトコルに従う非ISOモードで動作させることを含む。前記マルチモードICは、電圧源パッド、ISOプロトコルに従う第１組のパッド、及び非ISOプロトコルに従う第２組のパッドを具えている。この方法は、前記マルチモードICのパワーオン・リセット（電源投入時のリセット）中に、前記第１組のパッドのうちの１つのパッド上にISOモードの状態及び非ISOモードの状態のうちの一方が存在するか否かを検出するステップと、ISOモードの状態を検出した際に、前記マルチモードICをISOモードに構成して前記第２組のパッドを無効にするステップと、非ISOモードの状態を検出した際に、前記マルチモードICを非ISOモードに構成して前記第１組のパッドを無効にするステップとを具えている。この方法は、非ISOモードの状態を検出した際に、前記電圧源パッド上の非ISOモード電圧を検出することによって、非ISOモードを確認するステップを具えることもできる。
【００２３】
前記第１組のパッドが、ISO 7816プロトコルに従うリセット・パッド、クロック・パッド、及び入力／出力パッドを具えて、前記ISOモードの状態または非ISOモードの状態が存在するか否かを検出するステップが、ISO準拠のインタフェース及び非ISO準拠のインタフェースのうちの一方からの信号が、前記第１組のパッドのうちの１つ、例えばクロック・パッド上に存在することを検出するステップを具えていることが好ましい。非ISOプロトコルは、ユニバーサル・シリアルバス（USB）プロトコルで構成することができる。また本発明の方法は、前記マルチモードICがISOモードで構成されているか、あるいは非ISOモードで構成されているかを示すモード構成指標を記憶するステップを含むこともできる。
【００２４】
本発明では、前記第１組のパッドのうちの１つ、例えばクロック・パッド上にISOの状態を検出した場合に、ICをISOモードに構成する。モード識別信号は、非ISO準拠のリーダからクロック・パッド上に供給することができる。この場合には、ICをUSBモードのような非ISOモードに構成する。パワーオン・リセット・シーケンス（手順）中に、クロック・パッドを介して非ISOモードを検出した場合には、電圧源パッド上のUSB電圧を確認し、そして前記ICをUSBモードに構成する前に、ホストへのUSB接続を行うことができる。前記ICは、パワーオン・リセット・シーケンス中のクロック・パッドにおける信号レベルに応じて、ISOモードあるいは非ISOモードのいずれかに構成される。一旦、前記ICを一方のモードに構成すると、前記ICはこのモードのみで動作することができ、次のパワーオン・リセット・シーケンスによる以外に、このモードを変更することができない。
【００２５】
（好適な実施例の詳細な説明）
以下、本発明の好適な実施例について図面を参照して説明することによって、本発明をより詳細に説明する。しかし、本発明は多くの異なる形態で具体化することができ、そして本明細書に記載の実施例に限定されるべきものではない。むしろこれらの実施例は、本明細書をより完全なものにして、本発明の範疇を当業者に十分に伝えるために提供するものである。各図を通して、同一番号は同一構成要素を参照する。
【００２６】
図１に、本発明によるスマートカード10を示して説明する。当業者には明らかなように、スマートカード10は例えばプラスチック製であり、その外面上に複数の電気接点またはパッド12を有する。図に示すように、カード10は例えば８個のパッド12を具えている。パッド12は集積回路（IC）11用の外部インタフェースであり、IC11はカード10内の、通常はこれらのパッドの下に埋め込まれている。カード10の大きさ、及びパッド12の位置は、上述したISO 7816のような適切な規格によって定められている。もちろんIC11は、移動電話機用のSIM（Subscriber Identity Module：GSM携帯電話機用ICカード）のような他の媒体に埋め込むこともできる。
【００２７】
図２に示すように、パーソナル・コンピュータ（PC）20は通常、中央演算処理装置（CPU：Central Processing Unit）、モニタ、キーボード、及びマウスのような種々の入力／出力装置を具えている。これに加えて、PC20はスマートカード・リーダ22を具えて、スマートカードリーダ22は例えば、PCへのアクセスを制御するために使用することができる。図に示すように、スマートカード・リーダ22は独立した周辺装置であるが、スマートカード・リーダ22は、例えばCPU筐体あるいはキーボードに内蔵させることもできる。
【００２８】
上述したように、スマートカード・リーダ22は、ISO 7816プロトコル、あるいはユニバーサル・シリアルバス（USB）プロトコルのような非ISOのプロトコルに準拠させることができる。ISO 7816プロトコルはスマートカードに用いる慣例の規格であり、電圧源パッドVCC、接地パッドGND、入力／出力パッドI/O、リセット・パッドRST、及びクロック・パッドCLKを具えている。ISOプロトコルは、IC11については、パワーオン・リセットあるいはハードウエア・リセットを行う際のATR（Answer-to-Request：要求に対する応答）シーケンス（手順）によって特徴付けられる。
【００２９】
USBプロトコルは現在では、PC20のマウス、キーボード、シリアルI/O（入出力）ポート、等のような周辺装置毎に異なるインタフェースを置き換えるべく使用されている。上述したように、USBプロトコルは斬新なプラグ・アンド・プレイとなり得るものであり、このことは、PC20を再起動する必要なしに、USBプロトコルの装置をPC20に接続し、あるいは不接続にすることができることを意味する。USBケーブルは、電圧源線VBUS、接地線GND、D-プラス線D+またはDP、及びD-マイナス線D-またはDMを含む。D+とD-との差信号がNRZI（non return to zero inverted）符号化したデータ流である。USB 1.1の仕様は、電源またはUSB装置が4.01V〜5.5Vの間であることを要求する。
【００３０】
前述したように、カードと通信しているリーダの種類に応じて、ISO 7816プロトコル、及びUSBプロトコルのような他の非ISOのプロトコルで動作するスマートカード・システムを提供することが望まれる。ここで、本発明の具体例について図３を参照して説明する。マルチモードIC11は、国際標準化機7816（ISO 7816）プロトコルに従うISOモードのような第１モード、及びユニバーサル・シリアルバス（USB）プロトコルに従うUSBモードのような非ISOの第２モードで動作することが可能である。マルチモードIC11は一方のモードあるいは他方のモードで選択的に動作するが、同時に両方のモードで動作しない。
【００３１】
マルチモードIC11はスマートカード10内にあり、マイクロプロセッサ14、スイッチング（切換）ブロック16、及び外部インタフェース12を具えていることが好ましい。外部インタフェース12は、電圧源パッドVCC、基準電圧／接地パッドGND、ISOモード用の第１組のパッド、及び非ISOモード用の第２組のパッドを具えている。第１組のパッドは、ISO 7816プロトコルに従うリセット・パッドRST、クロック・パッドCLK、及び入力／出力パッドI/Oを含むことが好ましい。第２組のパッドは、USBプロトコルに従うD-プラス・パッドD+及びD-マイナス・パッドD-を含むことが好ましい。
【００３２】
IC11は、異なる外部インタフェースを有する２つのモードの一方のみで動作可能なので、IC11はどちらのモードで動作すべきかを決定する必要がある。従ってIC11は、前記ISOパッドのうちの１つ、例えばクロック・パッドCLKに接続したモード検出器49を具えたモード構成回路18を具えている。モード構成回路18は、電圧源パッドVCCに接続されてUSB電圧のような非ISOモードの電圧源を検出するUSB電圧検出器30と、スイッチング・ブロック16に接続されてモード検出器49からの出力を受信するラッチ回路40と、モード構成指標及びUSB_RST開始信号を記憶するUSBホスト接続検出器35とを具えることもできる。
【００３３】
少なくとも非ISOモードがUSBモードである場合については、モード構成回路18が、D-プラス・パッド及びD-マイナス・パッドに接続されてラッチ回路40に出力を供給するUSBホスト接続検出器35を具えることができる。USBホスト接続検出器35は、一旦IC11を非ISO（NISO）モードに構成した後に、IC11を含む媒体が実際にUSBポートに接続されていることを確認するために使用することができる。
【００３４】
IC11のスタートアップ（起動）あるいはパワーオン（電源投入）のシーケンス中には、モード構成回路18がIC11を、ISOモードまたは非ISOモードの一方で動作して他方のモードを無効にすべく構成する。例えば、IC11をUSBモードに構成した際には、リセット・パッドRST、クロック・パッドCLK、及び入力／出力パッドI/Oを無効にして、IC11をISOモードに構成した際には、D-プラス・パッドD+及びD-マイナス・パッドD-を無効にする。グリッチ（突発的な波形の乱れ）を防止するために、検出したモードをラッチ回路40によってラッチ（一時的に保持）する。そしてIC11のオペレーティング・システムが、リセット・ルーチンの期間中にこのビットをチェックして、ラッチ（保持）しているモードに対する適切なコード（符号）にアクセスする。
【００３５】
従って、マルチモードIC11を具えたスマートカード10を通常のスマートカード・リーダで使用する場合には、スマートカード10はISO 7816プロトコルに指定されているように動作して、USBインタフェース、即ちD-プラス・パッドD+及びD-マイナス・パッドD-を無効にして、消費電力をより少なくする。しかし、IC11はUSBインタフェースを具えているので、ISO準拠のスマートカード・リーダよりもむしろ低コストのUSB装置を使用して、ISO 7816的なやり取りを行うことができる。この場合には、ISOモードのインタフェース、即ちリセット・パッドRST、クロック・パッドCLK、及び入力／出力パッドI/Oを無効にする。一旦、IC11を一方のモードに構成すると、IC11は次のパワーオン・リセットまで、このモードのままである。
【００３６】
モード検出器49が、クロック・パッドCLK上の信号が電圧源パッドVCC上の電圧源信号の約30％未満であるか否かを検出して、クロック・パッドCLK上の信号が電圧源パッドVCC上の電圧源信号の約30％未満である場合に、モード構成回路18がIC11をISOモードに構成することが好ましい。あるいはまた、クロック・パッドCLK上の信号が電圧源パッドVCC上の電圧源信号の約70％以上である場合に、モード構成回路18がIC11をUSBモードに構成する。この場合には、USB電圧検出器30が、電圧源パッドVCC上の電源電圧約3.5Vより大きいか、好適には約4.01V〜5.5Vであるか否かを検出して、マルチモードIC11がUSBインタフェースと通信可能であることを確認する。
【００３７】
本発明によるIC11を用いるシステムは、ISOプロトコルのリーダ及びUSBプロトコルのリーダを具えている。ISOプロトコルのリーダは、前記のクロック・パッドに必要なクロック信号を供給する慣例のスマートカード・リーダとすることができる。従って、マルチモードIC11を具えたスマートカード10を慣例のスマートカード・リーダに挿入すると、クロック・パッドCLK上の信号が電圧源パッドVCC上の電圧源信号の約30％未満であるので、モード構成回路18がIC11をISOモードに構成する。しかし、本発明によるUSBプロトコルのリーダはUSBモード識別回路70を具えて、これはクロック・パッドCLKに、例えば固定レベルのUSBモード識別信号を供給し、これについては後で詳細に説明する。従って、スマートカード10または他の媒体をこうしたUSBプロトコルのリーダに接続すると、クロック・パッドCLK上の信号が電圧源パッドVCC上の電圧源信号の約70％以上であるので、モード構成回路18がIC11を非ISO（NISO）モードに構成する。
【００３８】
以下、本発明による方法について、図４を参照しながら説明する。この方法は、マルチ・プロトコル（多プロトコル）のスマートカードを、ISOプロトコルに従う第１モード、及びUSBプロトコルのような非ISOプロトコルに従う第２モードで動作させるステップを具えている。上述したように、マルチ・プロトコルのスマートカードは、電圧源パッドVCC、基準電圧／接地パッドGND、ISOプロトコルに従う第１組のパッドCLK、RST、I/O、及びUSBのような非ISOプロトコルに従う第２組のパッド、例えはD+、D-を有する外部インタフェース12を具えている。
【００３９】
この方法の開始時に（ブロック120）、IC11のパワーオン・リセット・シーケンスを開始する（ブロック122）。そしてこの方法は、前記マルチモードICのパワーオン・リセット中に、前記第１組のパッドのうちの１つのパッド上にISOモードの状態が存在するか否か、あるいは前記マルチモードICのパワーオン・リセット中に、前記第１組のパッドのうちの１つのパッド上に非ISOモードの状態が存在するか否かを検出するステップを具えている（以上ブロック124）。IC11の安全及び保全のために、このモードはできるだけ早く検出する。好適な実施例では、クロック・パッドCLK上の信号が電圧源パッドVCC上の電圧源信号の約30％未満であるか否かを検出する。クロック・パッドCLK上の信号が電圧源パッドVCC上の電圧源信号の約30％未満である場合には、IC11をISOモードに構成して、USBのような非ISOプロトコルに従う第２組のパッド、例えばD+、D-を無効にする（以上ブロック130）。あるいはまた、クロック・パッドCLK上の信号が電圧源パッドVCC上の電圧源信号の約70％以上である場合には、IC11を非ISOモードあるいはUSBモードに構成して、ISOプロトコルに従う第１組のパッド、即ちCLK、RST、I/Oを、例えばGNDに接続することによって無効にする（以上ブロック128）。
【００４０】
ここでも、この方法は、非ISOモードの状態を検出した際に（ブロック124）、電圧源パッドVCC上に非ISOモードの電圧、例えばUSBモードの電圧を検出し（ブロック126）、そしてUSBのホスト接続を検出することによって（ブロック136）、非ISOモードを確認するステップを具えることができる。この方法は、終了の前に（ブロック134）、前記マルチモードICがISOモードで構成されているか、あるいは非ISOモードで構成されているかを示すモード構成指標を記憶するステップを具えることができる。
【００４１】
例えばクロック・パッドCLK上にISOの状態を検出した場合に、IC11をISOモードに構成する。IC11が仮想的なUSBリーダ22と通信している場合に、モード識別信号をクロック・パッドCLK上に供給することができる。この場合にはIC11をUSBモードに構成する。またパワーオン・リセット・シーケンス中に、クロック・パッドCLKを介してUSBインタフェースを検出した場合には、USBケーブルの検出を実行することができ、そしてIC11をUSBモードに構成する前に、電圧源パッドVCC上のUSB電圧を確認する。
【００４２】
IC11は、パワーオン・リセット・シーケンス中のクロック・パッドCLKの信号レベルに応じて、ISOモードまたは非ISOモードのいずれかに構成される。USBモードのような非ISOモードを識別するために、クロック・パッドCLKに固定電圧レベルを供給する。このことは、VCCとCLKの間のプルアップ抵抗を用いて、リーダ及び／またはIC11において行うことができる。ISO 7816のパワーオン・リセット・シーケンスは、電源電圧をVCCに供給して、基準電圧／接地電圧をGNDに供給しつつ、RST及びCLK上の信号をロー（低）または"0"に保つことよって開始する。そしてI/Oパッドが、リーダまたはIC11のプルアップ抵抗からの信号を受信して、このICを受信モードにする。そして、クロック信号をCLKに供給して、一定時間後にRST上の信号をハイ（高）または"1"に設定する。これによりICのリセット・シーケンスを開始する。IC11がパワーオン・リセット状態にあってリセット・シーケンスを待機していることが、リーダにとって確実である際に、RSTに信号を供給する。
【００４３】
要するに、CLK上のクロック信号は"0"で始まり、そしてRST上の信号が立ち上がる最低400サイクル前に活性化する。IC11がUSB装置と通信している際には固定電圧レベルをCLKに供給するので、CLK上に検出される信号が"1"（VCCの70％より大きい）に固定されている場合には、ICをUSBモードに構成する。CLK上の信号が、VCCの70％より大きい値とVCCの30％未満の値との間で交互に変化するクロック信号である場合には、IC11をISOモードに構成する。この検出（ブロック124）は、CLK上の信号がVCC上の信号の30％未満であるか否かのテストになり得る。30％未満であればISOモードにする。30％未満でなければUSBモードにする。そしてUSBを検出するためにVCC上の電圧源信号をチェックして、この信号が4.01Vよりも大きいことを確認する（ブロック126）。USBプロトコルによれば、USBモードにおけるVCC上の電源電圧は約4.01V〜5.5Vであるべきである。
【００４４】
もちろん、リセット・パッドRST、可変電圧源パッドVPP、及び入力／出力パッドI/Oのような他のISOパッドも使用して、複雑度を変化させることもできる。一旦IC11を１つのモードに構成すると、IC11はこのモードのみで動作することができ、次のパワーオン・リセット・シーケンスによる以外はモードを変化させることができない。グリッチを防止するために、検出したモードをラッチしてモード指標／ビットをセットすることが好ましい。そしてマイクロプロセッサのリセット・ルーチンの期間中に、IC11のオペレーティング・システムがこのビットをチェックして、ラッチしているモードに対する適切なコード（符号）にアクセスする。
【００４５】
こうして、本発明によるマルチモードIC11、スマートカード10、ISO 7816プロトコル及びUSBプロトコルのような他の非ISOプロトコルにおける、システム及びこれに関連する動作方法について説明してきた。マルチモードIC11を内蔵するスマートカード10のような媒体は、通常のISO準拠のスマートカード・リーダ、あるいはパーソナル・コンピュータのような低コストの仮想的なUSBリーダで使用することができる。
【００４６】
本発明について、図５〜２８を参照しながらより詳細に説明する。本発明は、従来型（非電子的）分野とインターネットとの間の架け橋を確立する。この架け橋が、ユニバーサル・シリアルバス兼ISOのスマートカード（USIC）110である。USIC110は、ISOのSCリーダ120（図１１）上でのやり取りか、あるいはUSBポート124（図１８）上での直接的なやり取りのいずれも実行することができる。後者（USBポート）の場合には、USIC110は実際には、USBの特徴のうち、とりわけサスペンド（保留）状態をサポート（支援）するUSB装置である。全く同じUSICをPOSあるいはATMに使用することができ、そしてウェブ・サーフィン（ウェブ・サイトを見て回ること）に使用することもできる、というのは、ISOのSCリーダの負担は目に見えないからである。例えばUSIC110を持ち歩く人は、USIC110を用いて、USBプロトコルを通して自分の好みのインターネット・サイトで買い物をすることができ、そしてUSIC110を用いて、ISOプロトコルによってATMから現金を入手することができる。同一の携帯装置が２つの必要性（ニーズ）に応える。PC環境に特化した可能な応用をさらに取り入れるために、USBインタフェース120'（図２６）のみを有するSC（USC）も利用可能である。
【００４７】
USBのSCリーダのインタフェースは、前記USCまたはUSICに部分的に含まれ、そしてPCにも部分的に含まれる。USIC110内に用いるIC1100は、同じアプリケーションを実行するに当たり、USBプロトコルまたはISOプロトコルのいずれも取り扱うことができる。前記USC及びUSICが共に、単純な導通（パススルー：passthrough）コネクタを有するUSBとインタフェース（整合）することができる。前記USC及びUSICは、導通コネクタ及び少数の減結合キャパシタの他には、USBホスト・コントローラ121によって給電されるUSB上のバス給電の装置143として見られる電気回路を何ら必要としない。前記USICを挿入せずに、USICリーダ140をUSBポートに接続すると、このリーダはアプリケーションから見えない。これは仮想的なUSICリーダ140である。USBに接続したUSICリーダはUSCも受け付ける。
【００４８】
前記導通コネクタは、USBポート124上のUSB信号と、仮想リーダ140内の前記USCまたはUSICの接点との電気的結合（リンク）を確立する。この仮想リーダ140内にカードがない際には、システムからはSCリーダが見えない。前記USCまたはUSICを仮想リーダ140に挿入した際には、一旦USB装置を把握すると、この仮想リーダはシステムから見える。
【００４９】
本発明は、USICまたはUSCを仮想的なUSBのSCリーダ内で用いる際に、USBのやり取りを可能にして、同時に、USICをISOのSCリーダ内で用いる際に、ISOのやり取りを可能にする方法及び装置に関するものである。本発明の分野は認証装置であり、特に、USB及びISOのように２つ以上のシリアル・インタフェースを有するSC、トークン、及びICであり、そして特に、USBインタフェースのみを有するSC、トークン、及びICである。
【００５０】
ISOリーダ120（図９）は、たとえSCを挿入していない際にも、ISOリーダ120を用いるハードウエア・プラットフォーム（基盤）によって認識される。プロトコルを開始するためにはSCを挿入する必要がある。SCが機械的に定位置にあることをプラットフォームに知らせる位置スイッチが、SCによってオン状態にされるまでは、SCに電気信号を供給しない。公衆電話、POS、あるいはATMに使用するリーダは、過去の遺産の取り扱いを保証するために、異なる世代のSCが用いるすべてのプロトコルに準拠しなければならない。リーダでは異なるSCを用いることができる。同期及び非同期のSCが共に、リーダの製造業者に、電源接点（図８）を除いた各ISO接点上にインタフェース・トランシーバを設計することを義務づける。ISO 7816-2は、リーダとISO SCのリードフレームとの間に８つまでの接続を要求する。接点C1は電源電圧VCCに割り当て、接点C2はリセット信号RSTに割り当て、接点C3はクロック信号CLKに割り当て、接点C5はGNDの基準電圧に割り当て、接点C6は可変電源電圧VCCに割り当て、接点C7はデータ入力／出力I/Oに割り当てる。同期のISO 7816の応用では、タイプ２の動作条件下で、接点C4をファンクション（機能）コードFCBに割り当て、接点C8は他の同期の応用に用いることもできる。クラスＢの動作条件下にある非同期SCリーダは、C6上にVPPを必要としない。クラスＡの動作条件下にある非同期ＳＣは、C6上にVPP電圧を必要とする。特定の動作条件下にある同期SCリーダは、C8をヒューズ・ザッピング（Fuse Zapping）の能力に割り当てることができる。さらに、リーダの、VCC及びGND付近の各接点に、VCC及びGNDに対する静電気放電（ESD：Electro-static Discharge）防止回路を有するように製造した受動回路網を設けて、SCの挿入段階中のESDに対してICを保護することができる。こうして、ISO 7816-2インタフェースの８個の接点のすべてが、能動または受動回路網によって特定の特性を割り当てられたことになる。
【００５１】
一旦SCを定位置に置くと、スイッチがリーダのインタフェースに、SCが定位置にあることを知らせる。ここでパワーアップ・シーケンスを開始することができる。ISO 7816-3に記載されているように、SCリーダのインタフェース回路はVCCを供給し、そしてSCリーダに不都合のない最も早い機会に、インタフェース回路がクロック信号（CLK）を供給して、そのちょうど400クロック（CLK）サイクル後に、リセット信号（RST）を発行する。SCは、400CLKサイクル後でかつ40000CLKサイクルより前に、リセットに対する応答（ATR：Answer to Reset）信号をリーダに送信することによってリーダのRST信号に応答する。リンクが確立されて、やり取りを開始することができる。
【００５２】
本発明のSCは、USBアプリケーションでの使用に適合する。USBは４本の線を必要とする。USICまたはUSCについては、VBUS及びGNDをそれぞれ、リードフレーム接点C1及びC5に送ることができる。ISO 7816-2では、C1がVCC専用でありC5がGND専用であるので、これは小変更（マイナーチェンジ）である。信号D+及びD-もそれぞれ、リードフレーム接点C4及びC8に送ることができる。これら２つの接点は、将来ISO 7816-2による非同期ＳＣで使用するために予約されていた。リードフレーム接点C3、C6及びC7は、USBモードの選択あるいは他の用途に利用可能である。
【００５３】
USICまたはUSCに適合するSCリーダは、USICまたはUSCを挿入していないと、ハードウエア・プラットフォームによって認識されない。USBのSCリーダは仮想的なUSBリーダである。このリーダは、USICまたはUSCをUSBにつないだ際にハードウエア・プラットフォームによって認識されて、USB装置のようにふるまう。USICまたはUSCを仮想USBリーダ140に挿入すると、電源を除去（遮断）するまでは、仮想USBリーダ140はNISO（非ISO）モードを選択しなければならない。
【００５４】
USICまたはUSCを仮想USBリーダ140に挿入した際には、インタフェースが何らかの信号を供給する前に、リードフレーム接点がちょうどリーダの接点の下に位置していることを検出するスイッチが存在しない。この挿入プロセスは、何ミリ秒かのはね返り（リバウンド）を伴って長時間を要することがある。SCを費用効果的な仮想USBリーダ140に挿入すると、リードフレーム接点が通電（ホット）プラグになる。SC挿入のプロセス中に電力が供給される。SCがUSBで使用されていることはSC自身が検出すべきことであり、そして一旦挿入プロセスが完了すると、次の電源オフのシーケンスまではSCがUSBにつながったままである。USICまたはUSCに適合する仮想USBリーダ140は、USBバス給電の装置143としてふるまう。ホスト121は、USB装置がつながっていることを検出して、シングルエンド（単一端）ゼロ（SE0）の信号を送信することによって、装置の把握を開始する前にこの装置をリセットする。SCは、仮想USBリーダ140に挿入すると損傷はしないが動作しない。
【００５５】
USICは、仮想USBリーダ140に挿入すると、電源オフのシーケンスが来るまでUSICのNISO（非ISO）モードを選択する必要があり、そしてサスペンド（中断）モードを含めたUSBのやり取りをサポート（支援）する。USCは、仮想USBリーダ140に挿入すると、サスペンド・モードを含めたUSBのやり取りをサポートする。
【００５６】
要約すれば、SC、USIC、及びUSCのデバイスは、次の規則に準拠しなければならない。
１．USICをISOリーダに挿入した際には、ISOの動作モードを選択しなければならない。
２．USICを仮想USBリーダに挿入した際には、NISO（非ISO）の動作モードを選択しなければならない。
３．USCは、仮想USBリーダに挿入した際には、デフォルト（標準値）でNISOモードになってUSBのやり取りをサポートする。
４．USCは、ISOリーダに挿入した際に損傷しない。
５．SCは、仮想USBリーダに挿入した際に損傷しない。
【００５７】
これらのモード選択プロセスは少なくとも１個の接点を使用する。C2はISOの２つの論理レベルを使用し、C3はゼロに駆動するか、あるいはISOのクロックで駆動し、C4はISOインタフェースによってゼロに接続することができ、そしてUSBでは利用不可能であり、C6はISOインタフェースによって強制的にVPPにすることができるので、USBインタフェースによって強制的にゼロにすべきものであり、C7はISOインタフェースによってプルアップ（高電位に接続）することができるので、USBインタフェースによって強制的にゼロにすべきものであり、C8はISOインタフェースによってゼロに接続することができ、そしてUSBでは利用不可能である。C3、C6及びC7は、USICが実行しようとするモードを選択するために使用することができる。
【００５８】
例えば１日に何回も挿入し、そして一度やり取りを完了すると取り出す、というスマートカードの性質により、USICまたはUSCを仮想USBリーダ140で使用する際には、CPUが動作開始する前にUSICまたはUSCが適正に挿入されているか否かを、USICまたはUSC自身が検出する必要性が存在する。IC1100に適正電圧を供給しなければならないだけでなく、デバイスC4及びC8とホストD+及びD-との間のリンクを確立しなければならない。一旦このデバイスをホスト121に物理的に接続すると、デバイスがUSBにつながることができる。
【００５９】
本発明は、前述した課題を解決すべく実現することができる。本発明は、USICを、より一般的にはUSIC装置で使用するICを、これらのUSICまたはICを挿入するリーダの特性に整合するモードに設定する方法及び装置を含む。USICをISOのリーダに挿入すると、USICはISOで動作して、SCリーダが供給するRST信号がマイクロコントローラを始動させる。USICを仮想USBリーダ140に挿入すると、USICは非ISO（NISO）で動作して、低電圧検出が関係するD-またはD+信号を用いて、マイクロコントローラ用のリセット信号を発生する。USCを仮想USBリーダ140に挿入すると、USCはNISOモードで動作して、USB電圧検出器が関係するD-またはD+信号を用いて、マイクロコントローラ用のリセット信号を発生する。
【００６０】
第１の好適な実施例では、USIC内に用いるIC1100の制御論理回路が以下のタスクを実行する。
適正な第１電源電圧がICに供給されているか否かを検出し；
ICのC3ピンが負荷によってC1ピンにプルアップされている間に、何らかのCLKがC3ピンに供給されているか否かを検出して、CLKが供給されているか、あるいはゼロに留まっている場合にはモードをISOとし、さもなければモードをNISOとし；
モードの結果をモード（NODE）レジスタに記憶して；
ICがISOモードにラッチ（一時保持）されている場合には、ピンRSTがマイクロコントローラを始動させて、このマイクロコントローラがMODE（モード）レジスタの内容をチェックして、ISO 7816規格に指定されているすべてのやり取りを実行し；
ICがNISOモードにラッチされている場合には、C1上に存在する電圧が、USBの仕様によって指定された、前記第１電圧よりも大きい第２最小電源電圧よりも大きいことをチェックして、C1上の電圧が第２最小電源電圧よりも大きければ、規定のセトリング（整定）遅延の後に、前記制御論理回路が、ピンD-及びD+がUSBのホストの15kΩのプルダウン抵抗によってプルダウン（低電位に接続）されているか否かをチェックして、C1上の電圧が第２最小電源電圧よりも大きくなければ、C1上の電圧が許容限度よりも大きくなるまでは何も行わず；
ピンD-またはD+がUSBホストの15kΩのプルダウン抵抗によってプルダウンされている場合には、この情報をUSB_RSTレジスタに記憶して、ICの制御論理回路がマイクロコントローラの始動を許可して、このマイクロコントローラがMODEレジスタの内容を読み込んで、USBのサブプログラムに入り；
USBの仕様に記載されているように、このプログラムは、良好な電源電圧を検出した後の100ms以内に装置が有効につながるように適切な時間だけ待機して、前記マイクロコントローラは、実際の接続状態を読み取ることによって、ピンD-またはD+がUSBの15kΩの負荷によってプルダウンされているか否かをチェックする。接続が確立されている場合には、USBの仕様に従って、プルアップ抵抗の一方の側を、低速の装置用のD-上及び最高速度の装置用のD+に接続して、プルアップ抵抗の他方の側を、内部の3.3Vの基準電圧に接続することよって、装置がUSBにつながり、USBの仕様に記載されているすべてのやり取りを実行する。接続が確立されていない場合には、マイクロコントローラは休止状態に入って、新たなパワーアップ・シーケンスを待機する。
【００６１】
USICまたはUSCを仮想USBリーダ140に挿入した際には、スマートカードのインタフェースはUSICまたはUSCがUSBで使用されていることを検出して、USBの仕様に準拠したパワーアップ・シーケンスに適応して、これを開始することができなければならない。USICをISOリーダ120に挿入した際には、スマートカードのインタフェースはUSICがISOで使用されていることを検出して、ISOの仕様に準拠したパワーアップ・シーケンスに適応して、これを開始することができなければならない。
【００６２】
接点115、及びできれば磁気ストリップ112及びエンボス（圧刷）領域114を有するモジュール120を装備したSC110（図５）を、ガイド131によってガイド（案内）するSCリーダ（図６）に挿入すると、スイッチ130がSCを止めて、SCが挿入されたことを信号で知らせる。SC110はモジュール120を有して（図７Ａ及び図７Ｂ）、８個のISO接点C1〜C8のすべてがリードフレーム111の反対側にある。IC1100はリードフレーム111に装着されている。IC1100とリードフレーム接点との間の電気的接続は、ワイヤ・ボンディング技法109を用いてなされる。機械的及び化学的保護によって、この厚さ200μm足らずの構造のパッケージ化（実装）が完了する。
【００６３】
ここで図８を参照して説明する。図８には、同期及び非同期のアプリケーションが使用している接点を挙げた表を示す。I1のアプリケーションは現在でもプリペイドSC用に使用されている。同じ表に、現在のアプリケーションであるUSIC及びUSCを挙げて、ISO 7816-2に記載されている接点を、これらのカードに埋め込んだモジュールに割り当て方法を挙げている。
【００６４】
ここで図９を参照して説明する。図９には従来技術を示し、ここではISOのSCリーダ120がISOのSCのみを取り扱う。コンピュータ121は３つの主要なインタフェースを有し、即ちパラレル（並列）インタフェース122、シリーズ（直列）インタフェース123、及びUSB124である。ISOのSCリーダ120は、ISOの第２インタフェースに対するコンピュータ125、ISOドライバの第１インタフェース126、及び導通コネクタ127を有する。
【００６５】
ここで図１０を参照して説明する。図１０では、モジュールの接点に、ISO及びUSBのアプリケーションに準拠する名前を与えている。
【００６６】
ここで図１１を参照して説明する。図１１には、ISOのSC、あるいはUSICまたはUSCのようなUSB準拠のSCを取り扱うISOのSCリーダ120を示す。
【００６７】
図１２に、SCリーダ120のスイッチ130上までSCを挿入する動作を示す。導通接点180はモジュールの接点に整合する。ここで図１３を参照して説明する。図１３は、スイッチ130のオン状態を一旦検出した際にISOのSCが発生する信号を示す。まずVCCを供給し、そしてVPPが存在すればこれを供給して、クロックはインタフェースするまでに出現することができ、RSTがこれに続く。なおISOでは、接点C3（RST）は"0"であるか、あるいは短時間だけ"1"であり、決して恒久的に"1"になることがない。
【００６８】
図１４に本発明の好適な実施例を示し、ここではIC1100が、その内部の接点C3上にプルアップ抵抗190を有する。192は反転シュミット・トリガである。USICはISOのSCリーダ内にある。図１５に本発明の他の実施例を示し、ここではIC1100が、その内部の接点C7上にプルアップ抵抗190を有する。192は非反転シュミット・トリガである。USICはISOのSCリーダ内にある。図１６に本発明の他の実施例を示し、ここではIC1100が、その内部の接点C6上にプルアップ抵抗190を有する。192は非反転シュミット・トリガである。USICはISOのSCリーダ内にある。
【００６９】
図１７に、以上３つの実施例において発生する現象をまとめて示す。図１４の実施例では、C1をVCCに設定すると、電圧VCCが例えば2.8Vの所定限度以上になるまでの少なくとも例えば500μsの所定期間だけ、信号BADPWRが"1"に設定される。BADPWRDはBADPWRと同じ信号であるが、BADPWRよりも約4μs（dt）以上継続する。CLK TYPE1の信号が供給されて、信号dtの期間中にシュミット・トリガ192の入力の信号が"0"になれば、ラッチ195がリセットされてラッチ196がセットされることによって、MODEが強制的に"0"にされる。CLK TYPE2の信号が供給されれば、dtの期間中にシュミット・トリガ192の入力の信号が"0"になって、ラッチ195がリセットされてラッチ196がセットされることによって、MODEが強制的に"0"にされる。両方のクロック信号（CLK TYPE1及びCLK TYPE2）に対して、dtはC3に許容される最大周期の半分、即ち1μsよりも大きくなければならない。
【００７０】
図１５の実施例では、C1をVCCに設定すると、電圧VCCが例えば2.8Vの所定限度以上になるまでの少なくとも例えば500μsの所定期間だけ、信号BADPWRが"1"に設定される。BADPWRDはBADPWRと同じ信号であるが、BADPWRよりも約4μs以上継続する。ISOのプロトコルにより、接点C7は弱いプルアップ抵抗を（IC1100の）外部に有するが、プルアップを確実にするために（IC1100の）内部にもプルアップ抵抗を有する。dtの期間中には、シュミット・トリガ192の入力の信号が"1"のままであり、ラッチ195がリセットされてラッチ196がセットされることによって、MODEが強制的に"0"にされる。図１６の実施例では、C1をVCCに設定すると、電圧VCCが例えば2.8Vの所定限度以上になるまでの少なくとも例えば500μsの所定期間だけ、信号BADPWRが"1"に設定される。BADPWRDはBADPWRと同じ信号であるが、BADPWRよりも約4μs以上継続する。接点C6は、ISOのプロトコルによって、この接点を駆動する電圧VPPを有するが、プルアップ抵抗190も有し、dtの期間中にシュミット・トリガ192の入力の信号が"1"のままであれば、ラッチ195がリセットされてラッチ196がセットされることによって、MODEが強制的に"0"にされる。
【００７１】
ここで図１８を参照して説明する。図１８は仮想USBリーダ140を示し、これは導通（パススルー）コネクタ127'、USBケーブル142、及びUSBのシリーズＡのプラグコネクタ141を有する。USC及びUSICがこのリーダに適合する。仮想リーダ140はホストPC121のUSBポート124に接続する。仮想リーダ140に挿入したSC1200はUSBデバイス143を形成する。ここで図１９を参照して説明する。導通（パススルー）接点180がモジュールの接点に整合する。SCは、SCリーダに電圧を供給するように働きかけることはしない。チップ1100上に搭載したシステムは、NISOのモードを選択しなければならないだけでなく、リセット信号が存在しないので、適切な方法でマイクロコントローラを始動させなければならない。ピンC6及びI/Oは、モードNISOを検出するためにこれらのピンを使用する場合には、これらを接続する可能性があるのはGNDのみであるのでGNDに接続し、そしてピンC3はVBUSに接続することができる。内部のプルアップ抵抗は、接点とピンとの間に生じるはね返り（リバウンド）を回避するので、これがあることが好ましい。
【００７２】
ここで図２０を参照して説明する。図２０に、NISOの検出に関係するすべての信号を示す。時刻t0で、USICまたはUSCにVCCを供給する。時刻t2で、BADPWRがCUSBPDをセットする。カード挿入プロセスは当分の間進行し、ある時点で、接点C4及びC8をホスト内のプルダウン抵抗1122及び1123に接続する。「定位にある信号D-」及び「定位にある信号D+」は、SCの接点が躍動しながらインタフェースの接点に接触しているということを表わす。図２１のCUSBPD信号は、素子1103及び1104によって較正された電流を抵抗1122及び1123に送る。D-及びD+に生じる電圧を、比較器1112、1113、1114及び1115によって監視する。分圧器は、D-の電圧及びD+の電圧が共に抵抗1110の上側の電圧を下回り、かつ同じ抵抗の下側の電圧を上回る際に、時刻t5でAND回路1116がUSBPDに信号を送り、そして時刻t7で回路1119をリセットして信号USB_RSTを発生するように構成する。抵抗1122と1123との間の発生電圧をVIH、即ち2.8Vにして、時刻t12で発生する事象をホストが、ホストに何かがつながったものと判断しないようにする。スイッチング・ブロックがMODE＝1に従ったものであるので、CPU1121のRSTが信号を発行する。CPUが始動して、自分自身を初期化してMODEを読み込んで、パワーオフ・シーケンスが行われるまでUSBにおけるやり取りを実行する。その後に、しかしUSBの仕様により設定された100msの限度より前に、CPUは時刻t8でUSBPDが"1"であるか否かをチェックする。USBPDが"1"であれば、装置は信号CUSBPDを無効にする。時刻t12で、装置は、信号ATTACHにより、素子1102を用いてプルアップ・デバイス1101を3.3Vに接続することによってＵＳＢにつながる。期間t13の後に、ホストはシングルエンド（単一端）ゼロ（SE0）の信号でUSBを駆動する。期間t14中に装置の把握を開始する。
【００７３】
ここで図２４を参照して説明する。この図は、以上３つの実施例において発生することを要約したものである。図２１の好適な実施例では、C1をVCCに設定すると、電圧VCCが例えば2.8Vの所定限度を上回るまでの少なくとも例えば500μsの所定期間だけ、信号BADPWRが"1"に設定される。BADPWRDはBADPWRと同じ信号であるが、BADPWRよりも約4μs以上継続する。接点C3は、図１９にの仮想リーダ内のルーティング（経路設定）が非接続であることによって、そしてプルアップ抵抗190によって"1"である。C3上での躍動はこの実施例の妨げにならない。前記dtの期間中にシュミット・トリガ192の入力の信号が"1"のままであれば、ラッチ196がラッチ195のＱによってリセットされて、MODE＝1＝NISOとなる。図２２の実施例では、C1をVCCに設定すると、電圧VCCが例えば2.8Vの所定限度を上回るまでの少なくとも例えば500μsの所定期間だけ、信号BADPWRが"1"に設定される。BADPWRDはBADPWRと同じ信号であるが、BADPWRよりも約4μs以上継続する。接点C7は仮想リーダの外部の接地に接続して、dtの期間中にシュミット・トリガ192の入力の信号が"0"のままであれば、ラッチ196がラッチ195のＱによってリセットされて、MODE＝1＝NISOとなる。図２３の実施例では、C1をVCCに設定すると、電圧VCCが例えば2.8Vの所定限度を上回るまでの少なくとも例えば500μsの所定期間だけ、信号BADPWRが"1"に設定される。BADPWRDはBADPWRと同じ信号であるが、BADPWRよりも約4μs以上継続する。接点C6は仮想リーダの外部の接地に接続して、dtの期間中にシュミット・トリガ192の入力の信号が"0"のままであれば、ラッチ196がラッチ195のＱによってリセットされて、MODE＝1＝NISOとなる。
【００７４】
ここで図２５を参照して説明する。この図にはUSICプロセスのフロー図を示す。図２６にUSCモジュールを示す。この場合にはMODEが強制的に１になる。このモジュールをISOのリーダに使用しても何も起こらない。仮想USBリーダでは、ICがUSBにおける動作を開始し、図２０で説明した手順がこれに続く。図２７に、SCから除去できる状態のSIMカード1400を示す。SIMカード1400にはUSICまたはUSCモジュール110を埋め込むことができる。ここで図２８を参照して説明する。図１８に示す仮想USBリーダ用の異なる構成要素を示す。1500はトークン・リーダである。SIMカード1400は導通（パススルー）コネクタ127'に挿入するが、ケーブルは何も使用しない。シリーズＡのプラグ141は、このコネクタに直接接続する。
【００７５】
以上の説明及びこれに関連する図面に記載した教示の利益を受ける本発明の多数の変形及び他の実施例は、当業者が考案できるものである。従って、本発明は開示した特定の実施例に限定されるものではなく、上記変形及び実施例は特許請求の範囲に含まれることは明らかである。
【図面の簡単な説明】
【図１】  本発明によるスマートカードを図式的に示す図である。
【図２】  本発明によるスマートカード・リーダを有するパーソナル・コンピュータを図式的に示す図である。
【図３】  本発明によるマルチモードIC及びスマートカード・システムを図式的に示す図である。
【図４】  本発明のマルチモードICを動作させる方法のステップを概略的に示すフローチャートである。
【図５】  リードフレーム接点付きのSC（スマートカード）を図式的に示す図である。
【図６】  SCがSCリーダに挿入されたことを検出する電気機械的スイッチを図式的に示す図である。
【図７Ａ】  ISOリードフレームに装着したICを図式的に示す図である。
【図７Ｂ】  ISOリードフレームに装着したICを図式的に示す図である。
【図８】  各SCが使用するリードフレーム接点を示す表である。
【図９】  従来技術のISO SCリーダを図式的に示す図である。
【図１０】  USICを図式的に示す図である。
【図１１】  ISO SCリーダに適合するUSICまたはISO SCを示す図である。
【図１２】  ISO信号を、SCの挿入によって作動する位置スイッチと共に示す図である。
【図１３】  位置スイッチの作動を基準にしてISO信号を示すタイミング図である
【図１４】  CLK信号を用いてモードを選択するISO SCリーダに挿入したUSICを図式的に示す図である。
【図１５】  I/O信号を用いてモードを選択するISO SCリーダに挿入したUSICを図式的に示す図である。
【図１６】  VPP信号を用いてモードを選択するISO SCリーダに挿入したUSICを図式的に示す図である。
【図１７】  ISO SCリーダにおいてUSICを用いる際の、パワーアップ後のMODE信号を図式的に示す図である。
【図１８】  USB仮想リーダ及びUSICまたはUSCを図式的に示す図である。
【図１９】  USB仮想リーダで用いるUSICを図式的に示す図である。
【図２０】  USICをUSB仮想リーダに挿入した際のパワーアップ・シーケンスに含まれる信号を示すタイミング図である。
【図２１】  C3信号を用いてモードを選択するUSB仮想リーダに挿入するUSICを図式的に示す図である。
【図２２】  C7信号を用いてモードを選択するUSB仮想リーダに挿入するUSICを図式的に示す図である。
【図２３】  C6信号を用いてモードを選択するUSB仮想リーダに挿入するUSICを図式的に示す図である。
【図２４】  USB仮想リーダにおいてUSICを用いる際の、パワーアップ後のMODE信号を示すタイミング図である。
【図２５】  ISO及びUSBのバイモード（２モード）の装置を搭載して、１つのMODE（モード）を選択してCPUを始動させるために実行するステップを概略的に示すフロー図である。
【図２６】  リードフレームに装着し、かつUSC用のリードフレーム接点にワイヤ・ボンディングしたICを図式的に示す図である。
【図２７】  USICまたはUSCから直ちに分離可能なSIMプラグを図式的に示す図である。
【図２８】  シリーズＡのUSBプラグに適合するトークンに挿入したSIMプラグをを図式的に示す図である。
【図１】
0003776401.tif 000002
【図２】
0003776401.tif 000003
【図３】
0003776401.tif 000004
【図４】
0003776401.tif 000005
【図５】
0003776401.tif 000006
【図６】
0003776401.tif 000007
【図７Ａ】
0003776401.tif 000008
【図７Ｂ】
0003776401.tif 000009
【図８】
0003776401.tif 000010
【図９】
0003776401.tif 000011
【図１０】
0003776401.tif 000012
【図１１】
0003776401.tif 000013
【図１２】
0003776401.tif 000014
【図１３】
0003776401.tif 000015
【図１４】
0003776401.tif 000016
【図１５】
0003776401.tif 000017
【図１６】
0003776401.tif 000018
【図１７】
0003776401.tif 000019
【図１８】
0003776401.tif 000020
【図１９】
0003776401.tif 000021
【図２０】
0003776401.tif 000022
【図２１】
0003776401.tif 000023
【図２２】
0003776401.tif 000024
【図２３】
0003776401.tif 000025
【図２４】
0003776401.tif 000026
【図２５】
0003776401.tif 000027
【図２６】
0003776401.tif 000028
【図２７】
0003776401.tif 000029
【図２８】
0003776401.tif 000030