JP2004021351A - Ic card and its controlling method - Google Patents

Ic card and its controlling method Download PDF

Info

Publication number
JP2004021351A
JP2004021351A JP2002171996A JP2002171996A JP2004021351A JP 2004021351 A JP2004021351 A JP 2004021351A JP 2002171996 A JP2002171996 A JP 2002171996A JP 2002171996 A JP2002171996 A JP 2002171996A JP 2004021351 A JP2004021351 A JP 2004021351A
Authority
JP
Japan
Prior art keywords
command
unit
host
response
received
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2002171996A
Other languages
Japanese (ja)
Other versions
JP4001511B2 (en
Inventor
Isao Kato
加藤 勇雄
Tatsuya Adachi
足立 達也
Kazuya Iwata
岩田 和也
Tetsushi Kasahara
笠原 哲志
Seiji Nakamura
中村 清治
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2002171996A priority Critical patent/JP4001511B2/en
Publication of JP2004021351A publication Critical patent/JP2004021351A/en
Application granted granted Critical
Publication of JP4001511B2 publication Critical patent/JP4001511B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Abstract

<P>PROBLEM TO BE SOLVED: To provide a multifunction type IC card which prevents a signal from colliding with a host and maintains a high response to the host, and also provide a method for controlling the same. <P>SOLUTION: The IC card is provided with a function unit having a host interface part and a function operating part. The host interface part is provided with a command decoder that stores a first command group comprising commands processable by the function unit and a second command group comprising commands processable by another function unit, outputs a first search result after it searches whether a reception command from the host belongs to the first command group, and outputs a second search result after it searches whether the reception command belongs to the second command group; a response generating part which generates a response to the reception command; and an adjustment part which controls the response generating part in accordance with the first and the second search results. <P>COPYRIGHT: (C)2004,JPO

Description

【0001】
【発明の属する技術分野】
本発明はICカード及びその制御方法に関する。
【0002】
【従来の技術】
近年、小型で大容量、高速のメモリカードがパーソナルコンピュータ(パソコン)、デジタルカメラ、オーディオプレーヤー、携帯電話、PDA(Personal digital assistants)、カーナビゲーションシステム等で利用されている。
更に、最近では、上記のようなメモリ機能以外の機能(例えばBluetooth(登録商標)規格による無線通信等のネットワーク接続機能、GPS(Global Positioning System)による計測機能等)を搭載したI/O用のICカードも登場している。
【0003】
従来例1のI/O用のICカードは、1つのホストインタフェース部(以下「インタフェース」を「I/F」と略す。)と、そのホストI/F部と接続された1つ又は複数の機能モジュールとを有する。パソコン等のホストと、ホストに挿入された従来例1のICカードとは、ホストをマスタとし、ICカードをスレーブとするマスタ/スレーブ型の通信を行う。ホストI/F部はホストからのコマンドを受信し、そのコマンドを実行すべき機能モジュールを選択し、選択した機能モジュールにそのコマンドを伝送する。その機能モジュールがそのコマンドに従って処理を行い、ホストI/F部に応答(レスポンス)を返す。ホストI/F部は、応答をホストに伝送する。
【0004】
従来例1のICカードは、ホストから伝送されるコマンドを適切に処理し、全てのコマンドに対して適切な応答を返す。
ICカードは、ユーザが希望する機能をホスト機器に付加する役割を果たす。そのため、市場ニーズの多様化に伴い、種々の機能を任意に組み合わせた(特にメモリ機能とI/O機能を搭載した)多機能型ICカード(多機能モジュールカード)を開発し、市場に供給することが求められている。
【0005】
従来例2の多機能型ICカードは、ホスト機器とのバスラインに並列に機能モジュール(を含む機能ユニット)を接続する構成を有する。図6は、従来例2の多機能モジュールカード(多機能型ICカード)の構成を示す。
図6において、多機能モジュールカード601は、パソコン等のホスト機器であるホスト101の入出力部102とバスライン103を介して接続されている。 ホスト101と多機能モジュールカード601は、ホスト101をマスタとし、多機能モジュールカード601をスレーブとするマスタ/スレーブ型の通信を行う。
【0006】
多機能モジュールカード601には、機能ユニット611及び機能ユニット621が搭載されている。機能ユニット611と機能ユニット621は、バスライン103に並列に接続している。
本例では、機能ユニット611はメモリアクセス、機能ユニット621はデジタルカメラとのI/O処理を行う。
【0007】
機能ユニット611はホストI/F部612及び機能モジュール613を有する。機能ユニット621はホストI/F部622及び機能モジュール623を有する。
機能ユニットのホストI/F部612、622は、ホストとのインタフェース処理を行う。
機能モジュール613は、メモリアクセス処理を行い、機能モジュール623はデジタルカメラとのI/O処理を行う。
【0008】
ホスト101から多機能モジュールカード601に搭載されている機能ユニットへ送信されたコマンドは、機能ユニット611、621の各ホストI/F部612、622により受信される。
ホストI/F部612、622は、その受信されたコマンド(受信コマンド)を解析する。その解析結果(受信コマンドに含まれるコマンド番号(そのコマンドの種別を示す)等の情報)に応じて、機能ユニット611、621は処理を行う。
また、受信コマンドに対する応答をホスト101に送信する。
【0009】
各機能ユニットは、以下に示す方法でホストへの応答を返す。
(1)受信コマンドがその機能ユニットで処理可能で且つホスト101がその処理結果を要求しないコマンドの場合は、当該機能ユニットは、ホスト101に応答(例えば肯定を意味するACK)を返す。
(2)受信コマンドがその機能ユニットで処理可能で且つホスト101がその処理結果を要求するコマンドの場合は、当該機能ユニットは、ホスト101に応答及びその処理結果(例えば機能モジュール613がメモリから読み出したデータ)を送信する。
(3)受信コマンドがその機能ユニットで処理不可能であるコマンドの場合は、応答しない。
【0010】
例えば、受信コマンドが機能ユニット611に対するデータリード要求の指令である場合に、機能ユニット611の機能モジュール613は、その指令に従い不揮発性メモリ(例えばフラッシュメモリ)からデータを読み出し、応答とその読み出したデータとをホストI/F部612を介してホスト101に返す。
バスライン103は、コマンド/レスポンス線と、データ線とを含む。ホスト101からのコマンドと、機能ユニットからの応答(レスポンス)は、コマンド/レスポンス線を通じて伝送される。ホスト又は機能ユニットからのデータは、その要求コマンドの種別により、コマンド/レスポンス線を通じて送信する場合と、データ線を通じて送信する場合とがある。
【0011】
また、従来例2の多機能モジュールカードは、コマンド受信後、予め仕様により定められた一定時間内にホスト101に対する応答を返さなければならない。
【0012】
【発明が解決しようとする課題】
従来例2の多機能モジュールカードにおいて、機能ユニット611が処理可能なコマンドと機能ユニット621が処理可能なコマンドとが重複せず、且つホスト101が送信するコマンドが機能ユニット611及び621のいずれかが処理可能なコマンドに限られれば、従来例2のホスト及び多機能モジュールカードは問題無く動作する。
【0013】
しかし例えば受信コマンドが、複数の機能ユニットのいずれもが処理不可能なコマンドの場合は、多機能モジュールカードからホストに何の応答も返されない。ホストは、コマンドを出力して一定時間内に応答を受信しなければ、ICカードとの間の通信が途絶したと判断する。一般に、一旦通信が途絶すると、再び通信を回復するためには、ホストからICカードへの所定のコマンドの送信、及びホストとICカードとの間での所定の情報の交換を初めから実行する必要がある(通信プロトコルに応じて、必要な手順が異なる。)。即ち、ホストからのコマンドに対してICカードが何の応答もしなければ、両者の間のスムーズな通信が妨げられる。
【0014】
従来例2の(3)に代えて、下記の(3A)のプロトコルを実行することもできる。
(3A)受信コマンドがその機能ユニットで処理不可能であるコマンドの場合は、全ての機能ユニットがホストにコマンドへの応答を拒否する(コマンドが不正である)ことを意味する応答(例えばNACK)を返す。
(1)、(2)又は(3A)において、複数の機能ユニットが同一応答(例えばACK又はNAK)を同期して送り返す(例えばシンクロナス伝送)場合には、ホストは複数の機能ユニットから伝送された応答を読み取ることができる。
【0015】
しかし、複数の機能ユニットが1つのコマンドに対して異なる応答を返した場合(例えばメモリデータの送信要求コマンドに対して、1つの機能ユニット(メモリモジュール)がACKを返し、他の機能ユニット(例えば無線通信モジュール)がNACKを返した場合)、複数の機能ユニットからの応答がバスライン上で相互に衝突してデータが破壊され、ホストはそれらの応答を読み取ることができない。
【0016】
また、仮にそれぞれの機能ユニットの応答タイミングを調整し、複数の応答の衝突を回避したとしても(プロトコル上の互換性を確保できることが前提となる。)、双方の機能ユニットの応答内容が異なる場合には、ホストは、仕様上同一カード内の複数の機能ユニットを識別できないため、どの機能ユニットがどの応答を返してきたのかを認識できない。ホストは、複数の応答の内容を正しく認識して処理を正常に行うことができず、多機能モジュールカード601の制御を正しく行えない。
【0017】
ICカードの各機能ユニット(ホストI/F部)に固有のアドレスを割り当てる方法も考えられる。しかしこのような方法によれば、ホストと各機能ユニットとの通信において、コマンド及びレスポンスに送信元のアドレス及び送信先のアドレスを付加して送信する必要があり、通信情報量の増大、通信速度の低下を招く。小型で安価な単一の機能モジュールしか有さないICカード(一般に、単一機能型ICカードは、販売されるICカードの過半数を占める。)及びそのようなICカードのみを接続可能なホストにとって、複雑な通信プロトコルへの対応はコストアップ、消費電力の増大等を招いて好ましくない。
【0018】
送信元のアドレス及び送信先のアドレスを付加しないでコマンド及びレスポンスを送受信する、ホストと単機能型ICカードとの間の通信プロトコルが既に標準化されている場合、多機能型ICカード用の各機能モジュールに固有のアドレスを割り当てれば、単機能型ICカードと多機能型ICカードとの間の互換性がなくなる。
【0019】
本発明は、上記問題を解決し、通信が途絶することなく、且つ1つのICカードに搭載された複数の機能ユニットからの応答が相互に衝突することなく、ホストが正しく各機能ユニットからの応答を認識できるICカード及びその制御方法を提供することを目的とする。
本発明は、簡易な構成で1つのICカードに搭載された複数の機能ユニットの制御を精度良く行うことができるICカード及びその制御方法を提供することを目的とする。
【0020】
本発明は、単機能のICカードがホストとの間で行う通信と互換性を維持して、ホストとの間でスムーズに(混乱を生じることなく)通信を行う複数機能のICカード及びその制御方法を提供することを目的とする。
本発明は、単機能のICカードが簡易な方法でホストと通信する特徴を維持しつつ、ホストとの間でスムーズに通信を行う多機能のICカード及びその制御方法を提供することを目的とする。
【0021】
本発明によれば、機能ユニットを並列に接続するだけで、複数の機能を有するICカードを実現できる。複数の機能ユニットの組み合わせに応じてホストとのインタフェース部分の新たな要素(ハードウエア及びソフトウエアを含む。)を開発する必要がないため、複数機能を有するICカードの商品展開の速度を早め、開発コストを下げることができる。これにより、ICカードのコストを下げることもできる。本発明は、短期間に低コストで開発できる多機能型ICカード及びその制御方法を提供することを目的とする。
また、本発明は、ホスト−多機能型ICカード間で、コマンドに対する応答方法が異なる複数のモードに応じて、最適の方法で各機能ユニットを制御することができる多機能型ICカード及びその制御方法を提供することを目的とする。
【0022】
【課題を解決するための手段】
上記課題を解決するため、本発明は下記の構成を有する。
請求項1に記載の発明は、ホスト機器からのコマンドを受信するホストインタフェース部と、前記ホストインタフェース部が受信した前記コマンド(以下「受信コマンド」と呼ぶ。)に従い処理を行う機能動作部と、をそれぞれ有する複数の機能ユニットを有し、前記ホストインタフェース部は、その機能ユニットが処理可能なコマンドからなる第1のコマンド群と他の機能ユニットが処理可能なコマンドからなる第2のコマンド群とを記憶し、受信コマンドが前記第1のコマンド群に属するか否かを検索してその検索結果である第1の検索結果を出力し、受信コマンドが前記第2のコマンド群に属するか否かを検索してその検索結果である第2の検索結果を出力するコマンドデコーダと、前記受信コマンドに対する応答を生成する応答生成部と、前記第1の検索結果及び前記第2の検索結果に応じて前記応答生成部を制御する調停部と、を有することを特徴とするICカードである。
【0023】
請求項2に記載の発明は、前記ホストインタフェース部は他の機能ユニットの状態を検知し、前記調停部は前記他の機能ユニットの状態を前記応答生成部を制御する条件に加える、ことを特徴とする請求項1に記載のICカードである。
「機能ユニットの状態」とは、例えば、ホストからの初期化コマンドを受信し、その機能ユニットの「初期化が完了している状態」又はホストからの初期化コマンドを受信しておらず「初期化が完了していない状態」等を示す。初期化完了後、当該機能ユニットは、ホストからの通常コマンド(初期化等以外であり、その機能ユニット特有の動作を制御するコマンド)に対しての処理が可能となる。
【0024】
請求項3に記載の発明は、前記コマンドデコーダは、前記第1のコマンド群を記憶し、受信コマンドが前記第1のコマンド群に属するか否かを検索し、その検索結果である第1の検索結果を出力する第1のコマンドデコーダと、前記第2のコマンド群を記憶し、受信コマンドが前記第2のコマンド群に属するか否かを検索し、その検索結果である第2の検索結果を出力する第2のコマンドデコーダと、を有することを特徴とする請求項1又は請求項2に記載のICカードである。
【0025】
請求項4に記載の発明は、ホスト機器からのコマンドを受信するホストインタフェース部と、前記ホストインタフェース部が受信した前記コマンド(以下「受信コマンド」と呼ぶ。)に従い処理を行う機能動作部と、をそれぞれ有する複数の機能ユニットを有し、前記ホストインタフェース部は、その機能ユニットが処理可能なコマンドからなる第1のコマンド群を記憶し、受信コマンドが前記第1のコマンド群に属するか否かを検索してその検索結果である第1の検索結果を出力するコマンドデコーダと、前記受信コマンドに対する応答を生成する応答生成部と、前記第1の検索結果を他の機能ユニットの前記ホストインタフェース部に伝送し、他の機能ユニットの前記ホストインタフェース部から伝送された、受信コマンドが他の機能ユニットの前記ホストインタフェース部の前記第1のコマンド群に属するか否かの検索結果である前記第1の検索結果(以下、他の機能ユニットのホストインタフェース部が出力した第1の検索結果を「第2の検索結果」と呼ぶ。)を入力し、前記第1の検索結果及び前記第2の検索結果に応じて前記応答生成部を制御する調停部と、を有することを特徴とするICカードである。
【0026】
請求項5に記載の発明は、前記調停部は、更に、自機能ユニットの状態を他の機能ユニットの調停部に出力し且つ前記他の機能ユニットの調停部から他の機能ユニットの状態を入力し、前記他の機能ユニットの状態を前記応答生成部を制御する条件に加える、ことを特徴とする請求項4に記載のICカードである。
【0027】
請求項6に記載の発明は、前記ホストインタフェース部は、受信コマンドが前記第1のコマンド群に属するコマンドであれば応答し、受信コマンドが前記第2のコマンド群に属するコマンドであれば応答せず、受信コマンドが前記第1のコマンド群及び前記第2のコマンド群のいずれにも属さないコマンドであれば、予め定められた機能ユニットの前記ホストインタフェース部が応答する、ことを特徴とする請求項1から請求項5のいずれかの請求項に記載のICカードである。
【0028】
請求項7に記載の発明は、前記ホストインタフェース部は、受信コマンドが前記第1のコマンド群に属するコマンドであれば応答し、受信コマンドが前記第2のコマンド群に属するコマンドであれば応答せず、受信コマンドが前記第1のコマンド群及び前記第2のコマンド群のいずれにも属さないコマンドであれば応答せず且つ受信コマンドが不正であることを示すフラグをセットし、次の受信コマンドが前記第1のコマンド群に属するコマンドであれば、その受信コマンドに応答すると共に先の受信コマンドが不正であるという情報をホストに送り、且つ前記フラグをリセットする、ことを特徴とする請求項1から請求項5のいずれかの請求項に記載のICカードである。
「受信コマンドが不正」とは、受信コマンドが、そのICカードの全ての機能ユニットにとって処理不可能なコマンドであることを意味する。
【0029】
請求項8に記載の発明は、受信コマンドが前記第1のコマンド群にも前記第2のコマンド群にも属するコマンドであれば、予め定められた機能ユニットの前記ホストインタフェース部が応答することを特徴とする請求項6又は請求項7に記載のICカードである。
【0030】
請求項9に記載の発明は、前記ホストインタフェース部は、前記第1のコマンド群及び前記第2のコマンド群のいずれにも属さない受信コマンドの次に、前記第2のコマンド群に属するコマンドを受信した場合は、応答せず、前記フラグをリセットすることを特徴とする請求項7に記載のICカードである。
【0031】
請求項10に記載の発明は、前記第1のコマンド群及び前記第2のコマンド群のいずれにも属さない受信コマンドの次に、前記第1のコマンド群及び前記第2のコマンド群のいずれにも属するコマンドを受信した場合は、予め定められた機能ユニットの前記ホストインタフェース部がその受信コマンドに応答すると共に先の受信コマンドが不正であるという情報をホストに送り、且つ前記フラグをリセットし、予め定められた機能ユニット以外の機能ユニットの前記ホストインタフェース部は応答せず、前記フラグをリセットすることを特徴とする請求項7に記載のICカードである。
【0032】
請求項11に記載の発明は、前記第1のコマンド群に属するコマンドを受信した場合には応答を返し、前記第1のコマンド群に属さないコマンドを受信した場合には応答を返さない第1のインタフェースモードと、受信コマンドに必ず応答を返す第2のインタフェースモードと、を有し、前記第1のインタフェースモードにおいては、請求項7に記載のICカードとして機能し、前記第2のインタフェースモードにおいては請求項6に記載のICカードとして機能することを特徴とするICカードである。
【0033】
請求項12に記載の発明は、ホスト機器からのコマンドを受信するホストインタフェース部と、前記ホストインタフェース部が受信した前記コマンド(以下「受信コマンド」と呼ぶ。)に従い処理を行う機能動作部と、をそれぞれ有する複数の機能ユニットを有するICカードの制御方法であって、各機能ユニットにおいて、受信コマンドがその機能ユニットが処理可能なコマンドからなる第1のコマンド群に属するか否かを検索してその検索結果である第1の検索結果を出力し、受信コマンドが他の機能ユニットが処理可能なコマンドからなる第2のコマンド群に属するか否かを検索してその検索結果である第2の検索結果を出力するコマンド検索ステップと、各機能ユニットにおいて、前記第1の検索結果及び前記第2の検索結果に応じて、前記受信コマンドに対して応答を生成する応答生成ステップと、を有することを特徴とするICカードの制御方法である。
【0034】
請求項13に記載の発明は、他の機能ユニットの状態を検知する状態検知ステップを更に有し、前記応答生成ステップにおいて前記他の機能ユニットの状態を応答生成の条件に加える、ことを特徴とする請求項12に記載のICカードの制御方法である。
【0035】
請求項14に記載の発明は、ホスト機器からのコマンドを受信するホストインタフェース部と、前記ホストインタフェース部が受信した前記コマンド(以下「受信コマンド」と呼ぶ。)に従い処理を行う機能動作部と、をそれぞれ有する複数の機能ユニットを有するICカードの制御方法であって、各機能ユニットにおいて、受信コマンドがその機能ユニットが処理可能なコマンドからなる前記第1のコマンド群に属するか否かを検索してその検索結果である第1の検索結果を出力するコマンド検索ステップと、各機能ユニットにおいて、前記第1の検索結果を他の機能ユニットの前記ホストインタフェース部に伝送し、他の機能ユニットの前記ホストインタフェース部から伝送された、受信コマンドが他の機能ユニットの前記ホストインタフェース部の前記第1のコマンド群に属するか否かの検索結果である前記第1の検索結果(以下、他の機能ユニットのホストインタフェース部が出力した第1の検索結果を「第2の検索結果」と呼ぶ。)を入力する入力ステップと、各機能ユニットにおいて、前記第1の検索結果及び前記第2の検索結果に応じて、前記受信コマンドに対して応答を生成する応答生成ステップと、を有することを特徴とするICカードの制御方法である。
【0036】
請求項15に記載の発明は、自機能ユニットの状態を含む情報を他の機能ユニットのホストインタフェース部に出力する状態出力ステップと、他の機能ユニットのホストインタフェース部から他の機能ユニットの状態を含む情報を入力する状態入力ステップと、を更に有し、前記応答生成ステップにおいて前記他の機能ユニットの状態を応答生成の条件に加える、ことを特徴とする請求項14に記載のICカードの制御方法である。
【0037】
請求項16に記載の発明は、前記応答生成ステップが、受信コマンドが前記第1のコマンド群に属するコマンドであれば応答する第1の応答ステップと、受信コマンドが前記第2のコマンド群に属するコマンドであれば応答しない第2の応答ステップと、受信コマンドが前記第1のコマンド群及び前記第2のコマンド群のいずれにも属さないコマンドであれば、予め定められた機能ユニットの前記ホストインタフェース部が応答する第3の応答ステップと、を有することを特徴とする請求項12から請求項15のいずれかの請求項に記載のICカードの制御方法である。
【0038】
請求項17に記載の発明は、前記応答生成ステップが、受信コマンドが前記第1のコマンド群に属するコマンドであれば応答する第1の応答ステップと、受信コマンドが前記第2のコマンド群に属するコマンドであれば応答しない第2の応答ステップと、受信コマンドが前記第1のコマンド群及び前記第2のコマンド群のいずれにも属さないコマンドであれば応答せず且つ受信コマンドが不正であることを示すフラグをセットする第4の応答ステップと、前記第4の応答ステップの次に受信するコマンドが前記第1のコマンド群に属するコマンドであれば、その受信コマンドに応答すると共に先の受信コマンドが不正であるという情報をホストに送り、且つ前記フラグをリセットする第5の応答ステップと、を有することを特徴とする請求項12から請求項15のいずれかの請求項に記載のICカードの制御方法である。
【0039】
請求項18に記載の発明は、前記応答生成ステップが、受信コマンドが前記第1のコマンド群にも前記第2のコマンド群にも属するコマンドであれば、予め定められた機能ユニットの前記ホストインタフェース部が応答する第6の応答ステップを有することを特徴とする請求項16又は請求項17に記載のICカードの制御方法である。
【0040】
請求項19に記載の発明は、前記応答生成ステップが、前記第4の応答ステップの次に受信するコマンドが前記第2のコマンド群に属するコマンドであれば、応答せず、前記フラグをリセットする第7の応答ステップを有することを特徴とする請求項17に記載のICカードの制御方法である。
【0041】
請求項20に記載の発明は、前記応答生成ステップが、前記第4の応答ステップの次に受信するコマンドが前記第1のコマンド群及び前記第2のコマンド群のいずれにも属するコマンドであれば、予め定められた機能ユニットの前記ホストインタフェース部がその受信コマンドに応答すると共に先の受信コマンドが不正であるという情報をホストに送り、且つ前記フラグをリセットし、予め定められた機能ユニット以外の機能ユニットの前記ホストインタフェース部は応答せず、前記フラグをリセットする、第8の応答ステップを有することを特徴とする請求項17に記載のICカードの制御方法である。
【0042】
請求項21に記載の発明は、前記第1のコマンド群に属するコマンドを受信した場合には応答を返し、前記第1のコマンド群に属さないコマンドを受信した場合には応答を返さない第1のインタフェースモードと、受信コマンドに必ず応答を返す第2のインタフェースモードと、を有し、前記第1のインタフェースモードにおいては、請求項17に記載の制御方法を実行し、前記第2のインタフェースモードにおいては請求項16に記載の制御方法を実行することを特徴とするICカードの制御方法である。
【0043】
本発明は、ホストが、通信の混乱を引き起こすことなく、複数の機能ユニットを制御し、各機能ユニットからの応答を認識できる多機能型ICカード及びその制御方法を実現できるという作用を有する。
【0044】
【発明の実施の形態】
以下に本発明の実施をするための好適な形態を具体的に示した実施例について図面を参照しながら説明する。
【0045】
《実施例1》
図1〜4を用いて、本発明の実施例1の多機能モジュールカード(多機能型ICカード)及びその制御方法について説明する。
図1は本発明の実施例1の多機能モジュールカードの構成を示すブロック図である。
図1において、101はホスト(本実施例においてはパソコンである。)、111は多機能モジュールカードである。多機能モジュールカード111は、ホスト101の入出力部102とバスライン103を介して接続されている。
【0046】
ホスト101と、ホストに挿入された実施例1の多機能モジュールカードとは、ホスト101をマスタとし、多機能モジュールカード111をスレーブとするマスタ/スレーブ型の通信を行う。実施例1のバスライン103は、従来例2のバスライン103と同じである。実施例1の装置はシンクロナス通信(ホスト101がクロックを供給する。)を行うが、アシンクロナス通信であっても良い。
【0047】
多機能モジュールカード111は、バス制御部121、ホストI/F部(A)131、機能モジュール(A)141、ホストI/F部(B)151及び機能モジュール(B)161を有する。
ホストI/F部(A)131及びそれに対応する機能モジュール(A)141は、機能ユニット(実施例においてはメモリユニットである。)を構成する。
ホストI/F部(B)151及びそれに対応する機能モジュール(B)161は、機能ユニット(実施例においてはデジタルカメラユニットである。)を構成する。
【0048】
バス制御部121は、ホスト101の入出力部102から送信されたコマンド、データ及びクロックをそのまま全てのホストI/F部(ホストI/F部(A)131、ホストI/F部(B)151)の入出力部132、152に分配して伝送し、ホストから伝送されたクロックにより各入出力部132、152から出力されたレスポンス、データの論理積をホスト101の入出力部102に伝送する。
【0049】
バス制御部121と入出力部132、152との間の内部バスは、これらの入出力部が全てハイインピーダンスである時、HIGHレベルになる。後述するように、実施例1の多機能モジュールカード111においては1つのコマンドに対して、1つのホストI/F部のみが応答するように制御される。各入出力部132、152から出力されたレスポンス、データは、バス制御部121を介して、ホスト101の入出力部102に伝送される。バス制御部121は実質的に入出力バッファである。
バス制御部121を削除し、ホストからのバスライン103に、各機能ユニットの入出力部132、152を直接並列に接続しても良い。
【0050】
ホストI/F部(A)131、ホストI/F部(B)151は、ホスト101と機能モジュール(A)141、機能モジュール(B)161間のI/F処理を行う。
本実施例において、機能モジュール(A)141は、読み書き可能な不揮発性のメモリへのアクセスを行うメモリ専用の機能モジュールである。機能モジュール(B)161は、デジタルカメラとのI/O処理を行う。
ホストI/F部(A)131は、メモリモジュール用のホストI/F部であり、ホストI/F部(B)151は、I/O用のホストI/F部である。ホストI/F部(B)151には、デジタルカメラ用モジュールである機能モジュール(B)161のみならず、複数の異なる機能モジュール(例えば、Bluetooth(登録商標)規格の無線通信モジュール、GPSモジュール等)を接続することも可能である。
また、ホストI/F部(A)131、ホストI/F部(B)151と並列に、他のホストI/F部を接続することもできる。
【0051】
ホストI/F部(A)131は、入出力部132、第1のコマンドデコーダ133、機能モジュールI/F部134、第2のコマンドデコーダ135、調停部136及び応答生成部137を有する。
ホストI/F部(B)151は、入出力部152、第1のコマンドデコーダ153、機能モジュールI/F部154、第2のコマンドデコーダ155、調停部156及び応答生成部157を有する。
ホストI/F部(A)131とホストI/F部(B)151は、バス制御部121を介する接続の他に状態監視用信号路171にて相互に接続されている。
【0052】
ホストI/F部(A)131及びホストI/F部(B)151は具体的に処理可能なコマンドが異なるが、以下のホストI/F部の説明は両者に共通する。そこでホストI/F部(A)131を例にとって説明する。説明中のホストI/F部(A)131の各符号等をホストI/F部(B)151の各符号等に置き換え、ホストI/F部(B)151の各符号等をホストI/F部(A)131の各符号等に置き換えることにより、ホストI/F部(B)151を理解することができる。
ホストI/F部(A)131において、入出力部132は、ホスト101からのコマンド、データの受信及びホスト101への応答、データの送信を行う。入出力部132は、受信コマンドを第1のコマンドデコーダ133及び第2のコマンドデコーダ135に出力する。
【0053】
例えば入出力部132は、ホスト101からデータライト要求等のデータを伴うコマンドを受信した場合は、コマンドに伴うデータ(例えば機能モジュール(A)141がメモリに書き込むデータ)を機能モジュールI/F部134を介して機能モジュール(A)141に伝送する。例えば入出力部132は、ホスト101からデータリード要求等の処理結果を要求するコマンドを受信した場合は、その処理結果(例えば機能モジュール(A)141がメモリから読み出したデータ)をホスト101に送信する。
【0054】
第1のコマンドデコーダ133は、ホストI/F部(A)131及び機能モジュール(A)141の機能ユニットが処理可能なコマンドからなる第1のコマンド群を記憶しており、受信コマンドを第1のコマンド群の範囲で解析する。受信コマンドが第1のコマンド群に属していれば、受信コマンドの内容を機能モジュールI/F部134を通じて機能モジュール(A)141に伝送し、機能モジュール(A)141はその内容に応じた処理を行う。また、応答生成部137は受信コマンドに対する応答を返す。また、第1のコマンドデコーダ133は、受信コマンドが前記第1のコマンド群に属するか否かを検索してその検索結果である第1の検索結果を調停部136に出力する。
【0055】
第2のコマンドデコーダ135は、ホストI/F部(B)151及び機能モジュール(B)161の機能ユニットが処理可能なコマンドからなる第2のコマンド群を記憶しており、受信コマンドを第2のコマンド群の範囲で解析する。第2のコマンドデコーダ135は、受信コマンドが前記第2のコマンド群に属するか否かを検索してその検索結果である第2の検索結果を調停部136に出力する。
ホストI/F部(A)131の第1のコマンドデコーダ133は、ホストI/F部(B)151の第2のコマンドデコーダ155と同一のブロックであり、ホストI/F部(B)151の第1のコマンドデコーダ153は、ホストI/F部(A)131の第2のコマンドデコーダ135と同一のブロックである。ブロックを共通化することにより、ICカードの開発効率を向上させることができる。
【0056】
機能モジュールI/F部134は、ホストI/F部(A)131と機能モジュール(A)141との間のI/F処理を行う。第1のコマンドデコーダ133がコマンドを解析した結果、受信コマンドが当該機能ユニットで処理可能なコマンドの場合には、コマンドの内容が機能モジュールI/F部134を介して機能モジュール(A)141に出力される。また、機能モジュール(A)141で処理された結果は機能モジュールI/F部134を介して、応答生成部137に出力される。
【0057】
調停部136は、第1のコマンドデコーダ133が出力する第1の検索結果、第2のコマンドデコーダ135が出力する第2の検索結果、バスモード(後述)及び他の機能ユニット(ホストI/F部(B)151及び機能モジュール(B)161)の状態(後述)を基に、応答生成部137(受信コマンドに対する応答)の制御を行う。
【0058】
各機能ユニットは、ホストからの初期化コマンドを受信し、機能ユニットの初期化処理を行う。初期化処理完了後、当該機能ユニットは、ホストからの通常コマンド(その機能ユニット特有の動作を制御するコマンド、例えば、データリード要求等)に対しての処理が可能となる。
本実施例においては、機能ユニットの状態は、初期化処理が完了している状態と初期化処理が完了していない状態の2つの状態を示し、以降、それぞれ「初期化完了状態」と「初期化未完了状態」と称す。
【0059】
ホストI/F部(A)131は、ホストI/F部(A)131を含む機能ユニットが初期化完了状態の場合は状態監視用信号路171を通じてHIGHレベルの信号をホストI/F部(B)151に伝送し、ホストI/F部(A)131を含む機能ユニットが初期化未完了状態の場合は状態監視用信号路171を通じてLOWレベルの信号をホストI/F部(B)151に伝送する。
同様に、ホストI/F部(B)151は、ホストI/F部(B)151を含む機能ユニットが初期化完了状態の場合は状態監視用信号路171を通じてHIGHレベルの信号をホストI/F部(A)131に伝送し、ホストI/F部(B)151を含む機能ユニットが初期化未完了状態の場合は状態監視用信号路171を通じてLOWレベルの信号をホストI/F部(A)131に伝送する。
【0060】
状態監視用信号路171により、各ホストI/F部は、他の機能ユニットの状態(初期化完了状態/初期化未完了状態)を知ることができる。
各ホストI/F部は、その機能ユニットが初期化完了状態であればホストからの通常コマンドに応答可能であり、その機能ユニットが初期化未完了状態であればホストからの通常コマンドに応答しない。
【0061】
バスモードとは、ホストI/F部が管理する、ホスト101とのバスライン103での通信における2つのモードである。バスモードには第1のI/Fモードと第2のI/Fモードがある。
第1のI/Fモードは、ICカードは、ICカードが有するいずれかの機能ユニットが処理可能なコマンドを受信した場合にはホストに応答を返し、ICカードが有する全ての機能ユニットが処理不可能なコマンド(不正なコマンド)を受信した場合にはホストに応答を返さないモードである。不正なコマンドを受信したICカードは、次に処理可能なコマンドを受信すると、そのコマンドに応答すると共に、先のコマンドが不正であったという情報をホストに送る。
【0062】
第2のI/Fモードは、ホスト101からのコマンドに対して、ICカードが必ず応答を返すモードである。ICカードは、そのICカードが有する機能ユニットでは処理できないコマンドを受信した場合にも、ホストに応答(例えばコマンドが不正であることを示すNACK))を返す。
【0063】
従来技術には無い第2のコマンドデコーダと調停部を有する点が、実施例1における本発明の特徴である。
【0064】
応答生成部137は、調停部136からの制御信号と、第1のコマンドデコーダ133の解析結果(コマンドの種類に応じて応答が異なる。)に従ってホスト101に対する応答を生成し、入出力部132に出力する。また、応答生成部137は、機能モジュール(A)141が出力したデータを入力し、入出力部132に出力する。具体的な応答方法は、以下に説明する。
【0065】
次に、ホスト101からのコマンド受信時におけるホストI/F部(A)131、ホストI/F部(B)151の動作について説明する。
図2及び図3は、ホスト101からのコマンドを受信した後のホストI/F部(A)131、ホストI/F部(B)151の動作を示すフローチャートである。ここではホストI/F部(A)131を例にとって説明する。説明中のホストI/F部(A)131の各符号等をホストI/F部(B)151の各符号等に置き換えることにより、ホストI/F部(B)151を理解することができる。
最初に入出力部132がホスト101からのコマンドを受信したか否かをチェックする。ホスト101からのコマンドを受信した場合はステップS202に移行する。それ以外の場合は本処理を抜ける(ステップS201)。
【0066】
次に、第1のコマンドデコーダ133及び第2のコマンドデコーダ135は、その受信コマンドを解析し、それぞれ第1の検索結果及び第2の検索結果を出力する。
調停部136は、現在のバスモード(ホストとの間で行っている通信のモード)が、第1のI/Fモードか(ICカードが受信コマンド(種別)を処理可能な場合にのみ、ホストに応答を返すモード)又は第2のI/Fモード(ICカードが受信コマンド(種別)を処理可能か否かにかかわらず、必ずホストに応答を返すモード)であるかの判定を行う(ステップS202)。
バスモードが「第2のI/Fモード」の場合はステップS203に移行し、それ以外の場合(第1のI/Fモード)はステップS301(図3)に移行する。
【0067】
[第2のI/Fモードの場合の処理]
調停部136は、第1の検索結果に基づいて、受信コマンドが自ホストI/F部(自機能ユニット)用のコマンドであるかどうかを判別する(ステップS203)。受信コマンドが第1のコマンド群に属するという第1の検索結果が得られれば、受信コマンドは自ホストI/F部(ホストI/F部(A)131)用であると判断する。受信コマンドが第1のコマンド群に属さないという第1の検索結果が得られれば、受信コマンドはホストI/F部(A)131用のコマンドでないと判断する。
【0068】
ホストI/F部(A)131用のコマンド(自ホストI/F部専用、又は自ホストI/F部及び他のホストI/F部の共通コマンド)である場合、第1のコマンドデコーダ133は、機能モジュールI/F部134を介して機能モジュール(A)141にコマンドの内容(指令)情報を出力する。機能モジュール(A)141はそのコマンドに従い処理を行う(ステップS204)。
この時、ホストI/F部(A)131の状態が、初期化未完了状態である場合は、受信コマンドが初期化コマンドである場合のみ処理を行う。
【0069】
次いで、調停部136は、第2の検索結果に基づいて、受信コマンドが他のホストI/F部(ホストI/F部(B)151)用のコマンドでもあるかどうかを判別する(ステップS205)。受信コマンドが第2のコマンド群に属するという第2の検索結果が得られれば、受信コマンドはホストI/F部(B)151用のコマンドであると判断する。受信コマンドが第2のコマンド群に属さないという第2の検索結果が得られれば、受信コマンドはホストI/F部(B)151用のコマンドでないと判断する。
受信コマンドがホストI/F部(B)151用のコマンドでない場合はステップS206に移行する。
【0070】
次に、調停部136は、ホストI/F部(A)131がホストへ応答を行う必要があるかどうかを判断する(ステップS206)。
自ホストI/F部がホストに対して応答できるか否かは、受信コマンドの内容、自ホストI/F部(自機能ユニット)の状態、他のホストI/F部(他の機能ユニット)の状態及び応答優先権フラグの値によって定まる。
「応答優先権フラグ」は、各ホストI/F部が保持しており、このフラグがONの場合は、”応答優先権あり”となり、OFFの場合は”応答優先権なし”となる。応答優先権フラグの値は予め決められた固定値である。
【0071】
調停部136は、この応答優先権フラグ、第1のコマンドデコーダ133の検索結果、第2のコマンドデコーダ135の検索結果、ホストI/F部(A)131及びホストI/F部(B)151の状態により自ホストI/F部(ホストI/F部(A)131)がホスト101に対して応答を行えるかどうかを判断する。
【0072】
図4は、ホスト101への自ホストI/F部の応答有無とそれを決める前述の各条件を表(応答決定表)にしたものである。
応答決定表は受信コマンドの内容に応じて4つの区分を有する。
「自ホストI/F部のコマンド」は、自ホストI/F部(自機能ユニット)専用のコマンドであることを示す。「他ホストI/F部のコマンド」は、他のホストI/F部(他の機能ユニット)専用のコマンドであることを示す。「共通コマンド」は、自ホストI/F部及び他のホストI/F部で共通のコマンドであることを示す。「未定義コマンド」は、自ホストI/F部及び他のホストI/F部ともに対応していないコマンドであることを示す。
【0073】
左端の項目において、「自ホストI/F部の状態」とは、自機能ユニットの状態を示す。”○”は初期化完了状態を示し、”×”は初期化未完了状態であることを示す。
「他のホストI/F部の状態」とは、他の機能ユニットの状態を示す。”○”は初期化完了状態を示し、”×”は初期化未完了状態であることを示す。
「自ホストI/F部の優先権」は、応答優先権フラグの状態を示す。”○”は「応答権あり」と初期設定(ON)されていることを示し、”×”は「応答権なし」と初期設定(OFF)されていることを示す。
「応答の有無」において、”○”の場合は、自ホストI/F部がホストに対して応答を返すことを示し、”×”の場合は、他のホストI/F部が応答を返すことを示す。
【0074】
ステップS206において、ホストI/F部(A)131がホストへ応答を行う必要があるかどうかの判断は、この図4の応答決定表に基づき行われる。また、ステップS206の処理では、受信コマンドが、自ホストI/F部専用であるので、応答決定表の最上位項目(受信コマンドの内容)の内、一番左側の区分(自ホストI/F部のコマンド)のみで判断すれば良い。
ホストI/F部(A)131がホストへ応答を行う必要がある場合は、調停部136は、ホスト101に対する応答の生成を応答生成部137に要求する。応答生成部137によって生成された応答は入出力部132を介してホスト101へ送信され(ステップS207)、本処理は終了する。
【0075】
ホストI/F部(A)131がホストへ応答を行う必要がない場合は、ホストI/F部(A)131はホストへの応答を返さず処理を終了する(ホストI/F部(B)151がホストへの応答を行う(ステップS212)。)。
ステップS205において、受信コマンドがホストI/F部(B)151用のコマンドでもある場合(受信コマンドがホストI/F部(A)131、ホストI/F部(B)151で共通のコマンドの場合)は、ホストI/F部(A)131がホストへ応答を行う必要があるかどうかを判断する(ステップS208)。
【0076】
ステップS208の処理では、受信コマンドがホストI/F部(A)131及びホストI/F部(B)151で共通のコマンドあるので、図4の応答決定表の最上位項目(受信コマンドの内容)の内、左から3番目の区分(共通コマンド)のみで判断すれば良い。
ホストI/F部(A)131がホストへ応答を行う必要がある場合は、ステップS207の処理を行い、本処理は終了する。
ホストI/F部(A)131がホストへ応答を行う必要がない場合は、ホストI/F部(A)131はホストへの応答を返さず処理を終了する(ホストI/F部(B)151がホストへの応答を行う(ステップS212)。)。
【0077】
ステップS203で、受信コマンドがホストI/F部(A)131用のコマンドでない場合、調停部136は、受信コマンドが他のホストI/F部(ホストI/F部(B)151)用のコマンドであるかどうかを判別する(ステップS209)。ホストI/F部(B)151用のコマンドである場合は、調停部136は、ホストI/F部(A)131がホストへ応答を行う必要があるかどうかを判断する(ステップS210)。
【0078】
ステップS210の処理では、受信コマンドがホストI/F部(B)151専用のコマンドあるので、図4の応答決定表の最上位項目(受信コマンドの内容)の内、左から2番目の区分(他のホストI/F部のコマンド)のみで判断すれば良い。
ホストI/F部(A)131がホストへ応答を行う必要がある場合は、ステップS207の処理を行い、本処理は終了する。
ホストI/F部(A)131がホストへ応答を行う必要がない場合は、ホストI/F部(A)131はホストへの応答を返さず処理を終了する(ホストI/F部(B)151がホストへの応答を行う(ステップS212)。)。
【0079】
ステップS209で、受信コマンドがホストI/F部(B)151用のコマンドでもない場合、調停部136は、ホストI/F部(A)131がホストへ応答を行う必要があるかどうかを判断する(ステップS211)。
ステップS211の処理では、受信コマンドが、ホストI/F部(A)131及びホストI/F部(B)151で対応していないコマンドであるので、図4の応答決定表の最上位項目(受信コマンドの内容)の内、左から4番目の区分(未定義コマンド)のみで判断すれば良い。
ホストI/F部(A)131がホストへ応答を行う必要がある場合は、ステップS207の処理を行い、本処理は終了する。
ホストI/F部(A)131がホストへ応答を行う必要がない場合は、ホストI/F部(A)131はホストへの応答を返さず処理を終了する(ホストI/F部(B)151がホストへの応答を行う(ステップS212)。)。
【0080】
[第1のI/Fモードの場合の処理(図3)]
次にS202で、現在のバスモードが第1のI/Fモードであると判定された場合の処理について、図3を用いて説明する。
調停部136は、ステップS202の解析結果(第1の検索結果)から受信コマンドが自ホストI/F部(ホストI/F部(A)131)用のコマンドであるかどうかを判別する(ステップS301)。
自ホストI/F部用のコマンド(自ホストI/F部専用又は共通コマンド)である場合は、機能モジュールI/F部134を介して機能モジュール(A)141にコマンドの内容(指令)情報を出力する。機能モジュール(A)141はその指令に従い処理を行う(ステップS302)。
この時、ホストI/F部(A)131の状態が、初期化未完了状態である場合は、受信コマンドが初期化コマンドである場合のみ処理を行う。
【0081】
次いで、調停部136は、第2の検索結果に基づいて受信コマンドが他のホストI/F部(ホストI/F部(B)151)用のコマンドでもあるかどうかを判別する(ステップS303)。ホストI/F部(B)151用のコマンドでない場合は、調停部136は、ホストI/F部(A)131がホストへ応答を行う必要があるかどうかを判断する(ステップS304)。
ステップS304の処理では、受信コマンドがホストI/F部(A)131専用のコマンドあるので、図4の応答決定表の最上位項目(受信コマンドの内容)の内、一番左側の区分(自ホストI/F部のコマンド)のみで判断すれば良い。
【0082】
ただし、第1のI/Fモードでは、自ホストI/F部及び他のホストI/F部で処理不可能な場合においては、ホストへの応答を返さないため、自ホストI/F部の状態が初期化未完了の状態(図4の応答決定表で”×”の箇所)では、応答を返さない。
【0083】
ステップS304において、ホストI/F部(A)131がホストへ応答を行う必要がある場合は、調停部136は、ホスト101に対する応答の生成を応答生成部137に要求する。応答生成部137によって生成された応答は入出力部132を介してホスト101へ送信される(ステップS305)。この時、不正フラグがONとなっている場合(先の受信コマンドが不正であった場合)には、応答生成部137は、応答(コマンド長は48ビットである。)の所定のビット(不正フラグビット)を立てる。これによりホスト101は、直前のコマンドが不正コマンド(どのホストI/F部も処理できないコマンド)であったことを認識できる。
【0084】
不正フラグとは、第1のI/Fモードにおいて、ホストからのコマンド受信時に、多機能モジュールカード上の全ホストI/F部(実施例1においてはホストI/F部(A)131及びホストI/F部(B)151)で、ともに処理不可能である場合にONにするフラグであり、各々のホストI/F部で管理される。不正フラグは、全ホストI/F部の内、いずれか一つのホストI/F部が処理可能であるコマンドを受信した場合にクリア(OFF)される。
従って、複数のホストI/F部が動作中である場合には、各々の不正フラグは同一値を示す。
調停部136は不正フラグを(ONの場合には)OFFにし(ステップS306)、本処理は終了する。
【0085】
ステップS304において、ホストI/F部(A)131がホストへ応答を行う必要がない場合(ホストI/F部(A)131が初期化未完了状態の場合)は、調停部136は不正フラグをONにし(ステップS312)、本処理を終了する。(ホストへの応答を行わない。)
【0086】
ステップS303において、受信コマンドが他のホストI/F部(ホストI/F部(B)151)用のコマンドでもある場合(受信コマンドがホストI/F部(A)131及びホストI/F部(B)151で共通のコマンドの場合)、調停部136は、ホストI/F部(A)131がホストへ応答を行う必要があるかどうかを判断する(ステップS307)。
ステップS307の処理では、受信コマンドがホストI/F部(A)131及びホストI/F部(B)151で共通のコマンドであるので、図4の応答決定表の最上位項目(受信コマンドの内容)の内、左から3番目の区分(共通コマンド)のみで判断すれば良い。
ただし、ステップS304と同様に、自ホストI/F部の状態が初期化未完了の状態(図4の応答決定表で”×”の箇所)では応答を返さない。
【0087】
ステップS307において、ホストI/F部(A)131がホストへ応答を行う必要がある場合は、ステップS305(ホストへの応答処理)及びS306(不正フラグのクリア)を実行し、本処理を終了する。ステップS305及びS306は既に説明済みである。
ステップS307において、ホストI/F部(A)131がホストへ応答を行う必要がない場合は、調停部136は、状態監視用信号路171からの入力信号に基づいて、ホストI/F部(B)151が初期化完了状態であるか否かを判定する(ステップS308)。ホストI/F部(B)151が初期化完了状態である場合は、ホストI/F部(B)151がホスト101への応答を行う(ステップS309)。調停部136は不正フラグを(ONの場合には)OFFにし(ステップS306)、本処理は終了する。
【0088】
ステップS308において、ホストI/F部(B)151が初期化未完了状態である場合は、調停部136は不正フラグをONにし(ステップS312)、本処理を終了する。(ホストへの応答を行わない。)
ステップS301で受信コマンドが自ホストI/F部(ホストI/F部(A)131)用のコマンドでない場合、調停部136は、第2の検索結果に基づいて受信コマンドが他のホストI/F部(ホストI/F部(B)151)用のコマンドであるか否かを判別する(ステップS310)。ホストI/F部(B)151用のコマンドである場合は、調停部136は、状態監視用信号路171からの入力信号に基づいて、ホストI/F部(B)151が初期化完了状態であるか否かを判定する(ステップS311)。
【0089】
ステップS311で、ホストI/F部(B)151が初期化完了状態である場合は、ホストI/F部(B)151がホスト101への応答を行う(ステップS309)。調停部136は不正フラグを(ONの場合には)OFFにし(ステップS306)、本処理は終了する。
ステップS311で、ホストI/F部(B)151が初期化未完了状態である場合は、調停部136は不正フラグをONにし(ステップS312)、本処理を終了する。(ホストへの応答を行わない。)
【0090】
第1のI/Fモードにおいては、ICカード上の全ホストI/F部で処理不可能なコマンドを受信した場合に不正フラグをONする(ステップS312)。次に自ホストI/F部で処理可能なコマンドを受信して、応答する場合は、応答コマンドの所定のビット(不正フラグビット)を立てて(1に設定して)先のコマンドが不正であったという情報をホストに伝える(ステップS305)。そして不正フラグをOFFにする(ステップS306)。
また、ICカード上の全ホストI/F部で処理不可能なコマンドを受信した後に、いずれかのホストI/F部で処理可能なコマンドを受信し、他のホストI/F部が応答する場合(ステップS309)は、不正フラグをOFFにする(ステップS306)。
【0091】
尚、実施例1のICカードは2つの機能ユニットを有しているが、ICカードが3つ以上の機能ユニットを搭載することもできる。例えばICカードが3つの機能ユニットを搭載する場合は、第2のコマンドデコーダは、他の機能ユニットの数と同数の第2のコマンド群を有し、同数の第2の検索結果を出力する。それぞれの第2のコマンド群は、対応する他のホストI/F部が処理可能なコマンドからなる。各第2の検索結果は、受信コマンドが1つの第2のコマンド群に属するか否かを示す。
また、各ホストI/F部は、他の2つのホストI/F部とそれぞれ状態監視用信号路で接続されており、2つの他のホストI/F部の状態(機能ユニットの状態)を知ることができる。1つの他のホストI/F部が初期化未完了状態の場合は、調停部は、初期化未完了状態の他のホストI/F部に係る第2の検索結果を使用しない。それ以外の点において、3つ以上の機能ユニットを搭載するICカードは、実施例1のICカードと同様である。
【0092】
《実施例2》
図5を用いて、本発明の実施例2の多機能モジュールカード(多機能型ICカード)及びその制御方法について説明する。
図5は本発明の実施例2の多機能モジュールカードの構成を示すブロック図である。
図5において、101はホスト(本実施例においてはパソコンである。)、511は多機能モジュールカードである。多機能モジュールカード511は、ホスト101の入出力部102とバスライン103を介して接続されている。
ホスト101と、ホストに挿入された実施例2の多機能モジュールカードとは、ホストをマスタとし、多機能モジュールカード511をスレーブとするマスタ/スレーブ型の通信を行う。
【0093】
実施例2の多機能モジュールカード511(図5)と実施例1の多機能モジュールカード111(図1)は、ホストへの応答の送信制御方法において違いがある。他の点は同一である。実施例1と同一機能を有するものには図1と同一符号を付し、説明を省略する。
多機能モジュールカード511は、バス制御部121、ホストI/F部(A)531、機能モジュール(A)141、ホストI/F部(B)551及び機能モジュール(B)161を有する。
ホストI/F部(A)531及びそれに対応する機能モジュール(A)141は、機能ユニット(実施例においてはメモリユニットである。)を構成する。
ホストI/F部(B)551及びそれに対応する機能モジュール(B)161は、機能ユニット(実施例においてはデジタルカメラユニットである。)を構成する。
【0094】
ホストI/F部(A)531は、入出力部132、第1のコマンドデコーダ133、機能モジュールI/F部134、調停部533及び応答生成部137を有する。
ホストI/F部(B)551は、入出力部152、第1のコマンドデコーダ153、機能モジュールI/F部154、調停部553及び応答生成部157を有する。ホストI/F部(A)531の調停部533と、ホストI/F部(B)551の調停部553とは、データの送受信が可能な伝送路であるホストI/F部間通信路561で相互に接続されている。
【0095】
実施例2の多機能モジュールカードは、第2のコマンドデコーダを有しておらず、それに代えて、ホストI/F部間通信路561を有する点で実施例1の多機能モジュールカードと異なる。それ以外の点において、両者は同一である。
入出力部、第1のコマンドデコーダ、機能モジュールI/F部及び応答生成部については、実施例1と同一機能であるため説明を省略する。
【0096】
調停部533(553)は、第1のコマンドデコーダ133(153)から第1の検索結果を受けると、第1の検索結果をホストI/F部間通信路561を介して他のホストI/F部の調停部553(533)に通知する。
実施例2のホストI/F部において、他のホストI/F部の調停部から送られてくる第1のコマンドデコーダの第1の検索結果が、実施例1のホストI/F部の第2のコマンドデコーダの第2の検索結果に相当する。また、実施例1において他のホストI/F部の状態(初期化完了/初期化未完了)を用いたが、これは、他のホストI/F部の調停部から第1のコマンドデコーダの解析結果が送られてくれば初期化完了状態であり、送られてこない場合は初期化未完了状態と判断することで対応できる。
【0097】
また、調停部533(553)は、自ホストI/F部(A)531((B)551)の状態(初期化完了/初期化未完了)に関する情報を他のホストI/F部の調停部553(533)に出力しても良い。この場合、この情報から調停部533(553)は、他の機能ユニットの状態(初期化完了/初期化未完了)を判断する。
【0098】
調停部533(553)は、第1のコマンドデコーダ133(153)の第1の検索結果、他のホストI/F部の第1のコマンドデコーダ153(133)の第1の検索結果、他の機能ユニットの状態及びバスモード(実施例1で説明)の状態を基に、応答生成部137(157)を制御する。応答生成部137(157)は、制御に応じて、受信コマンドに対する応答を行う。
【0099】
【発明の効果】
本発明によれば、通信が途絶することなく、且つ1つのICカードに搭載された複数の機能ユニットからの応答が相互に衝突することなく、ホストが正しく各機能ユニットからの応答を認識できるICカード及びその制御方法を実現できるという有利な効果が得られる。
本発明によれば、簡易な構成で1つのICカードに搭載された複数の機能ユニットの制御を精度良く行うことができるICカード及びその制御方法を実現できるという有利な効果が得られる。
【0100】
本発明によれば、単機能のICカードがホストとの間で行う通信と互換性を維持して、ホストとの間でスムーズに通信を行う多機能型ICカード及びその制御方法を実現できるという有利な効果が得られる。
本発明によれば、単機能のICカードが簡易な方法でホストと通信する特徴を維持しつつ、ホストとの間でスムーズに通信を行う多機能型ICカード及びその制御方法を実現できるという有利な効果が得られる。
【0101】
本発明によれば、機能ユニットを並列に接続するだけで、複数の機能を有するICカードを実現できる。本発明によれば、短期間に低コストで開発できる多機能型ICカード及びその制御方法を実現できるという有利な効果が得られる。
また、本発明によれば、ホスト−多機能型ICカード間で、コマンドに対する応答方法が異なる複数のモードに応じて、最適の方法で各機能ユニットを制御することができる多機能型ICカード及びその制御方法を実現できるという有利な効果が得られる。
【図面の簡単な説明】
【図1】本発明の実施例1の多機能モージュールカードの内部構成を示すブロック図である。
【図2】本発明の実施例1の多機能モージュールカードの応答制御動作(第2のI/Fモード時を含む。)を示すフローチャートである。
【図3】本発明の実施例1の多機能モージュールカードの第1のI/Fモード時での応答制御動作を示すフローチャートである。
【図4】本発明の実施例1において「応答の有無」の決定表である。
【図5】本発明の実施例2における多機能モージュールカードの内部構成を示すブロック図である。
【図6】従来例2の複数の機能ユニットを搭載したICカードの構成を示すブロック図である。
【符号の説明】
101 ホスト
102、132、152 入出力部
103 バスライン
111、511、601 多機能モジュールカード
121 バス制御部
131、531 ホストI/F部(A)
133、153 第1のコマンドデコーダ
134、154 機能モジュールI/F部
135、155 第2のコマンドデコーダ
136、156、533、553 調停部
137、157 応答生成部
141 機能モジュール(A)
151、551 ホストI/F部(B)
161 機能モジュール(B)
171 状態監視用信号路
561 ホストI/F部間通信路
611、621 機能ユニット
612、622 ホストI/F部
613、623 機能モジュール
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to an IC card and a control method thereof.
[0002]
[Prior art]
In recent years, small, large-capacity, high-speed memory cards have been used in personal computers (personal computers), digital cameras, audio players, mobile phones, PDAs (Personal digital assistants), car navigation systems, and the like.
Furthermore, recently, I / Os equipped with functions other than the above-described memory functions (for example, a network connection function such as wireless communication based on the Bluetooth (registered trademark) standard, a measurement function based on a GPS (Global Positioning System), etc.) are provided. IC cards have also appeared.
[0003]
The I / O IC card of Conventional Example 1 has one host interface unit (hereinafter, “interface” is abbreviated as “I / F”) and one or more host interfaces connected to the host I / F unit. A function module. A host such as a personal computer and the IC card of the first conventional example inserted into the host perform master / slave type communication using the host as a master and the IC card as a slave. The host I / F receives a command from the host, selects a function module to execute the command, and transmits the command to the selected function module. The function module performs processing according to the command, and returns a response to the host I / F unit. The host I / F transmits a response to the host.
[0004]
The IC card of Conventional Example 1 appropriately processes a command transmitted from a host and returns an appropriate response to all commands.
The IC card plays a role of adding a function desired by the user to the host device. Therefore, with the diversification of market needs, a multi-function IC card (multi-function module card) having any combination of various functions (especially having a memory function and an I / O function) has been developed and supplied to the market. Is required.
[0005]
The multifunctional IC card of Conventional Example 2 has a configuration in which functional modules (including functional units) are connected in parallel to a bus line with a host device. FIG. 6 shows a configuration of a multifunctional module card (multifunctional IC card) of Conventional Example 2.
In FIG. 6, a multi-function module card 601 is connected via a bus line 103 to an input / output unit 102 of a host 101 which is a host device such as a personal computer. The host 101 and the multi-function module card 601 perform master / slave type communication in which the host 101 is a master and the multi-function module card 601 is a slave.
[0006]
The multifunctional module card 601 has a functional unit 611 and a functional unit 621 mounted thereon. The functional unit 611 and the functional unit 621 are connected to the bus line 103 in parallel.
In this example, the functional unit 611 performs memory access, and the functional unit 621 performs I / O processing with the digital camera.
[0007]
The function unit 611 has a host I / F unit 612 and a function module 613. The function unit 621 has a host I / F unit 622 and a function module 623.
The host I / F units 612 and 622 of the functional unit perform interface processing with the host.
The function module 613 performs a memory access process, and the function module 623 performs an I / O process with a digital camera.
[0008]
Commands transmitted from the host 101 to the functional units mounted on the multi-function module card 601 are received by the host I / F units 612 and 622 of the functional units 611 and 621.
The host I / F units 612 and 622 analyze the received command (received command). The functional units 611 and 621 perform processing according to the analysis result (information such as a command number (indicating the type of the command) included in the received command).
Also, a response to the received command is transmitted to the host 101.
[0009]
Each functional unit returns a response to the host in the following manner.
(1) If the received command is a command that can be processed by the functional unit and the host 101 does not request the processing result, the functional unit returns a response (for example, ACK meaning affirmative) to the host 101.
(2) If the received command is a command that can be processed by the functional unit and the host 101 requests the processing result, the functional unit sends a response to the host 101 and the processing result (for example, the function module 613 reads out the memory from the memory). Data).
(3) If the received command is a command that cannot be processed by the functional unit, no response is made.
[0010]
For example, when the received command is a command for a data read request to the functional unit 611, the functional module 613 of the functional unit 611 reads data from a nonvolatile memory (for example, a flash memory) according to the command, and returns a response and the read data. Is returned to the host 101 via the host I / F unit 612.
Bus line 103 includes a command / response line and a data line. Commands from the host 101 and responses from the functional units are transmitted through command / response lines. Depending on the type of the request command, data from the host or the functional unit may be transmitted through a command / response line or transmitted through a data line.
[0011]
Further, after receiving the command, the multifunction module card according to the second conventional example must return a response to the host 101 within a predetermined time defined by specifications.
[0012]
[Problems to be solved by the invention]
In the multifunction module card of the second conventional example, the command that can be processed by the functional unit 611 and the command that can be processed by the functional unit 621 do not overlap, and the command transmitted by the host 101 is either one of the functional units 611 and 621. As long as the commands that can be processed are limited, the host and the multifunction module card of the second conventional example operate without any problem.
[0013]
However, for example, if the received command is a command that cannot be processed by any of the plurality of functional units, no response is returned from the multi-function module card to the host. If the host outputs the command and does not receive a response within a predetermined time, it determines that communication with the IC card has been interrupted. Generally, once communication is interrupted, transmission of a predetermined command from the host to the IC card and exchange of predetermined information between the host and the IC card must be executed from the beginning to recover the communication again. (The required procedure differs depending on the communication protocol.) That is, if the IC card does not respond to a command from the host, smooth communication between the two is prevented.
[0014]
Instead of (3) of Conventional Example 2, the following protocol (3A) can be executed.
(3A) When the received command is a command that cannot be processed by the functional unit, a response (for example, NACK) meaning that all the functional units reject the response to the command to the host (the command is invalid). return it.
In (1), (2) or (3A), when a plurality of functional units synchronously send back the same response (eg, ACK or NAK) (eg, synchronous transmission), the host is transmitted from the plurality of functional units. Can read the response.
[0015]
However, when a plurality of functional units return different responses to one command (for example, in response to a memory data transmission request command, one functional unit (memory module) returns ACK and another functional unit (for example, If the wireless communication module returns a NACK), the responses from the plurality of functional units collide with each other on the bus line to destroy data, and the host cannot read those responses.
[0016]
Also, even if the response timing of each functional unit is adjusted to avoid collision of a plurality of responses (assuming that protocol compatibility can be ensured), if the response contents of both functional units are different. However, the host cannot identify a plurality of functional units in the same card due to the specification, and therefore cannot recognize which functional unit has returned which response. The host cannot correctly recognize the contents of the plurality of responses and perform the processing normally, and cannot control the multi-function module card 601 correctly.
[0017]
A method of assigning a unique address to each functional unit (host I / F unit) of the IC card is also conceivable. However, according to such a method, in communication between the host and each functional unit, it is necessary to add a source address and a destination address to a command and a response and transmit the command and response. Causes a decrease in For an IC card having only a small and inexpensive single function module (generally, a single function type IC card occupies a majority of IC cards sold) and a host to which only such an IC card can be connected. However, it is not preferable to cope with a complicated communication protocol because it increases costs and power consumption.
[0018]
If the communication protocol between the host and the single-function IC card that transmits and receives commands and responses without adding the source address and the destination address is already standardized, each function for the multi-function IC card If a unique address is assigned to the module, compatibility between the single-function IC card and the multi-function IC card is lost.
[0019]
The present invention solves the above problems, and allows the host to correctly respond to each functional unit without interrupting communication and without colliding with responses from a plurality of functional units mounted on one IC card. It is an object of the present invention to provide an IC card capable of recognizing the information and a control method thereof.
An object of the present invention is to provide an IC card capable of accurately controlling a plurality of functional units mounted on one IC card with a simple configuration and a control method thereof.
[0020]
The present invention is directed to a multi-function IC card that communicates smoothly (without confusion) with a host while maintaining compatibility with communication performed by a single-function IC card with the host, and control thereof. The aim is to provide a method.
SUMMARY OF THE INVENTION An object of the present invention is to provide a multi-function IC card that performs smooth communication with a host while maintaining the feature that a single-function IC card communicates with a host in a simple manner, and a control method thereof. I do.
[0021]
According to the present invention, an IC card having a plurality of functions can be realized only by connecting functional units in parallel. There is no need to develop new elements (including hardware and software) for the interface with the host according to the combination of a plurality of functional units, so that the speed of product development of IC cards having a plurality of functions is increased, Development costs can be reduced. Thereby, the cost of the IC card can be reduced. An object of the present invention is to provide a multifunctional IC card that can be developed in a short period of time at low cost, and a control method thereof.
Further, the present invention provides a multi-function IC card capable of controlling each functional unit in an optimum manner according to a plurality of modes in which a method of responding to a command is different between a host and a multi-function IC card, and a control thereof. The aim is to provide a method.
[0022]
[Means for Solving the Problems]
In order to solve the above problems, the present invention has the following configurations.
According to the first aspect of the present invention, there is provided a host interface unit for receiving a command from a host device, a function operation unit for performing processing in accordance with the command (hereinafter, referred to as a “reception command”) received by the host interface unit, And a plurality of functional units each having the following. The host interface unit includes a first command group including commands that can be processed by the functional unit and a second command group including commands that can be processed by other functional units. And searches whether the received command belongs to the first command group, outputs a first search result as a search result, and determines whether the received command belongs to the second command group. And a command decoder that outputs a second search result as a search result, and a response generator that generates a response to the received command When an IC card and having a an arbitration unit to control the response generation unit in response to the first search result and the second search results.
[0023]
The invention according to claim 2 is characterized in that the host interface unit detects a state of another functional unit, and the arbitration unit adds a state of the other functional unit to a condition for controlling the response generation unit. The IC card according to claim 1.
The “state of the functional unit” means, for example, that an initialization command is received from the host, the “initialization is completed” state of the functional unit, or “initialization command is not received from the host. State has not been completed. " After the completion of the initialization, the functional unit can process a normal command from the host (a command other than initialization or the like, which controls an operation specific to the functional unit).
[0024]
According to a third aspect of the present invention, the command decoder stores the first command group, searches whether or not a received command belongs to the first command group, and obtains a first command which is a search result. A first command decoder for outputting a search result, and storing the second command group, and searching whether or not a received command belongs to the second command group; a second search result as a search result And a second command decoder that outputs the first command decoder and the second command decoder.
[0025]
According to a fourth aspect of the present invention, there is provided a host interface unit that receives a command from a host device, a function operation unit that performs processing in accordance with the command (hereinafter, referred to as a “reception command”) received by the host interface unit, The host interface unit stores a first command group consisting of commands that can be processed by the functional unit, and determines whether a received command belongs to the first command group. A command decoder that outputs a first search result as a search result, a response generation unit that generates a response to the received command, and the host interface unit of another functional unit that outputs the first search result. And the received command transmitted from the host interface unit of the other functional unit is transmitted to the other functional unit. The first search result (hereinafter, the first search result output by the host interface unit of another functional unit is a search result indicating whether or not the host interface unit belongs to the first command group). And an arbitration unit that controls the response generation unit according to the first search result and the second search result. Card.
[0026]
In the invention according to claim 5, the arbitration unit further outputs the state of the own function unit to the arbitration unit of another function unit, and inputs the state of another function unit from the arbitration unit of the other function unit. 5. The IC card according to claim 4, wherein a state of the other functional unit is added to a condition for controlling the response generation unit. 6.
[0027]
The invention according to claim 6, wherein the host interface unit responds if the received command belongs to the first command group, and responds if the received command belongs to the second command group. If the received command does not belong to any of the first command group and the second command group, the host interface unit of a predetermined functional unit responds. An IC card according to any one of claims 1 to 5.
[0028]
The invention according to claim 7, wherein the host interface unit responds if the received command belongs to the first command group, and responds if the received command belongs to the second command group. If the received command does not belong to any of the first command group and the second command group, no response is made and a flag indicating that the received command is invalid is set, and the next received command is set. Is a command belonging to the first command group, responding to the received command, sending information indicating that the received command is invalid to the host, and resetting the flag. An IC card according to any one of claims 1 to 5.
“Received command is invalid” means that the received command is a command that cannot be processed by all functional units of the IC card.
[0029]
The invention according to claim 8 is that, if the received command is a command belonging to both the first command group and the second command group, the host interface unit of the predetermined functional unit responds. An IC card according to claim 6 or claim 7.
[0030]
The invention according to claim 9, wherein the host interface unit transmits a command belonging to the second command group next to a received command not belonging to any of the first command group and the second command group. 8. The IC card according to claim 7, wherein the flag is reset when no response is received.
[0031]
The invention according to claim 10 is characterized in that after the received command that does not belong to any of the first command group and the second command group, the received command is assigned to any of the first command group and the second command group. If a command to which the command belongs also is received, the host interface unit of the predetermined functional unit responds to the received command and sends information to the host that the previous received command is invalid, and resets the flag, 8. The IC card according to claim 7, wherein the host interface unit of a functional unit other than a predetermined functional unit does not respond and resets the flag.
[0032]
The invention according to claim 11, wherein a response is returned when a command belonging to the first command group is received, and a response is not returned when a command not belonging to the first command group is received. And a second interface mode that always returns a response to a received command. In the first interface mode, the second interface mode functions as the IC card according to claim 7, and Is an IC card that functions as the IC card according to claim 6.
[0033]
According to a twelfth aspect of the present invention, there is provided a host interface unit that receives a command from a host device, a function operation unit that performs processing according to the command (hereinafter, referred to as a “reception command”) received by the host interface unit, A method of controlling an IC card having a plurality of functional units each having a function of searching for whether a received command belongs to a first command group consisting of commands that can be processed by the functional unit. A first search result as the search result is output, and whether or not the received command belongs to a second command group consisting of commands that can be processed by another functional unit is searched, and the second command as the search result is searched. A command search step of outputting a search result, and in each of the function units, a command search step according to the first search result and the second search result. Is a control method of an IC card and having a a response generation step of generating a response to the received command.
[0034]
The invention according to claim 13 further comprises a state detecting step of detecting a state of another functional unit, wherein the state of the other functional unit is added to a condition for generating a response in the response generating step. A method for controlling an IC card according to claim 12.
[0035]
According to a fourteenth aspect of the present invention, there is provided a host interface unit that receives a command from a host device, a function operation unit that performs processing according to the command (hereinafter, referred to as a “reception command”) received by the host interface unit, A method of controlling an IC card having a plurality of functional units, each of which has a function of searching for whether a received command belongs to the first command group consisting of commands that can be processed by the functional unit. A command search step of outputting a first search result as a search result, and in each functional unit, transmitting the first search result to the host interface unit of another functional unit; The received command transmitted from the host interface unit is transmitted to the host interface of another functional unit. The first search result (hereinafter, the first search result output by the host interface unit of another functional unit is a “second search”) which is a search result as to whether or not the first command group belongs to the first command group. And a response generating step of generating a response to the received command in each functional unit according to the first search result and the second search result. And a control method for an IC card.
[0036]
According to a fifteenth aspect of the present invention, there is provided a status output step of outputting information including a status of a self-functional unit to a host interface unit of another functional unit, and transmitting a status of another functional unit from a host interface unit of the other functional unit. 15. The control of the IC card according to claim 14, further comprising: a state input step of inputting information including the information, wherein the state of the other functional unit is added to a condition for generating a response in the response generating step. Is the way.
[0037]
In the invention according to claim 16, the response generating step is a first response step for responding if the received command belongs to the first command group, and the received command belongs to the second command group. A second response step that does not respond if it is a command; and a host interface of a predetermined functional unit if the received command does not belong to any of the first command group and the second command group. The IC card control method according to any one of claims 12 to 15, further comprising a third response step in which the unit responds.
[0038]
The invention according to claim 17, wherein the response generation step is a first response step for responding if the received command belongs to the first command group, and the received command belongs to the second command group. A second response step of not responding if the command is a command, and no response if the received command does not belong to any of the first command group and the second command group and the received command is invalid A fourth response step of setting a flag indicating the first command group, if the command received next to the fourth response step belongs to the first command group, responds to the received command, A fifth response step of sending information to the host that is invalid, and resetting the flag. 2 is a control method for an IC card according to any one of claims 15.
[0039]
The invention according to claim 18, wherein in the response generation step, if the received command is a command belonging to both the first command group and the second command group, the host interface of a predetermined functional unit The control method for an IC card according to claim 16 or claim 17, further comprising a sixth response step in which the unit responds.
[0040]
In the invention according to claim 19, if the response generation step is a command belonging to the second command group, the command received after the fourth response step does not respond, the flag is reset. The method according to claim 17, further comprising a seventh response step.
[0041]
20. The invention according to claim 20, wherein the response generating step is a command in which a command received next to the fourth response step belongs to both the first command group and the second command group. The host interface unit of the predetermined functional unit responds to the received command and sends information to the host that the previous received command is invalid, and resets the flag, and resets the flag to a function other than the predetermined functional unit. 18. The method according to claim 17, further comprising an eighth response step of resetting the flag without responding to the host interface unit of the functional unit.
[0042]
The invention according to claim 21, wherein a response is returned when a command belonging to the first command group is received, and a response is not returned when a command not belonging to the first command group is received. And a second interface mode that always returns a response to a received command. In the first interface mode, the control method according to claim 17 is executed, and the second interface mode is executed. Is a method for controlling an IC card, which executes the control method according to claim 16.
[0043]
The present invention has an effect that a host can control a plurality of functional units without causing communication confusion and can realize a multifunctional IC card capable of recognizing a response from each functional unit and a control method thereof.
[0044]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, an embodiment that specifically shows a preferred embodiment for carrying out the present invention will be described with reference to the drawings.
[0045]
<< Example 1 >>
First Embodiment A multifunctional module card (multifunctional IC card) according to a first embodiment of the present invention and a control method thereof will be described with reference to FIGS.
FIG. 1 is a block diagram showing the configuration of the multi-function module card according to the first embodiment of the present invention.
In FIG. 1, reference numeral 101 denotes a host (in this embodiment, a personal computer), and reference numeral 111 denotes a multi-function module card. The multi-function module card 111 is connected to the input / output unit 102 of the host 101 via a bus line 103.
[0046]
The host 101 and the multi-function module card of the first embodiment inserted in the host perform master / slave type communication in which the host 101 is a master and the multi-function module card 111 is a slave. The bus line 103 of the first embodiment is the same as the bus line 103 of the second conventional example. The device of the first embodiment performs synchronous communication (the host 101 supplies a clock), but may perform asynchronous communication.
[0047]
The multi-function module card 111 has a bus control unit 121, a host I / F unit (A) 131, a function module (A) 141, a host I / F unit (B) 151, and a function module (B) 161.
The host I / F (A) 131 and the functional module (A) 141 corresponding thereto constitute a functional unit (a memory unit in the embodiment).
The host I / F (B) 151 and the corresponding functional module (B) 161 constitute a functional unit (a digital camera unit in the embodiment).
[0048]
The bus control unit 121 converts the command, data, and clock transmitted from the input / output unit 102 of the host 101 into all host I / F units (the host I / F unit (A) 131 and the host I / F unit (B)). 151) is transmitted to the input / output units 132 and 152, and the logical product of the response and data output from each of the input / output units 132 and 152 is transmitted to the input / output unit 102 of the host 101 by the clock transmitted from the host. I do.
[0049]
The internal bus between the bus control unit 121 and the input / output units 132 and 152 becomes HIGH when all of these input / output units have high impedance. As described later, in the multi-function module card 111 of the first embodiment, control is performed such that only one host I / F unit responds to one command. Responses and data output from the input / output units 132 and 152 are transmitted to the input / output unit 102 of the host 101 via the bus control unit 121. The bus control unit 121 is substantially an input / output buffer.
The bus control unit 121 may be deleted, and the input / output units 132 and 152 of each functional unit may be directly connected in parallel to the bus line 103 from the host.
[0050]
The host I / F unit (A) 131 and the host I / F unit (B) 151 perform I / F processing between the host 101 and the functional module (A) 141 and the functional module (B) 161.
In this embodiment, the function module (A) 141 is a function module dedicated to a memory that accesses a readable and writable nonvolatile memory. The functional module (B) 161 performs I / O processing with the digital camera.
The host I / F (A) 131 is a host I / F for a memory module, and the host I / F (B) 151 is a host I / F for an I / O. The host I / F (B) 151 includes not only the function module (B) 161 which is a module for a digital camera, but also a plurality of different function modules (for example, a wireless communication module of Bluetooth (registered trademark) standard, a GPS module, and the like). ) Can also be connected.
Further, another host I / F unit can be connected in parallel with the host I / F unit (A) 131 and the host I / F unit (B) 151.
[0051]
The host I / F unit (A) 131 includes an input / output unit 132, a first command decoder 133, a functional module I / F unit 134, a second command decoder 135, an arbitration unit 136, and a response generation unit 137.
The host I / F unit (B) 151 includes an input / output unit 152, a first command decoder 153, a functional module I / F unit 154, a second command decoder 155, an arbitration unit 156, and a response generation unit 157.
The host I / F unit (A) 131 and the host I / F unit (B) 151 are connected to each other via a state monitoring signal path 171 in addition to the connection via the bus control unit 121.
[0052]
The host I / F unit (A) 131 and the host I / F unit (B) 151 have different commands that can be specifically processed, but the following description of the host I / F unit is common to both. Thus, the host I / F (A) 131 will be described as an example. In the description, each code of the host I / F unit (A) 131 is replaced with each code of the host I / F unit (B) 151, and each code of the host I / F unit (B) 151 is replaced with the host I / F. The host I / F unit (B) 151 can be understood by substituting each symbol of the F unit (A) 131.
In the host I / F unit (A) 131, the input / output unit 132 receives commands and data from the host 101, responds to the host 101, and transmits data. The input / output unit 132 outputs the received command to the first command decoder 133 and the second command decoder 135.
[0053]
For example, when the input / output unit 132 receives a command accompanied by data such as a data write request from the host 101, the input / output unit 132 writes data accompanying the command (for example, data written by the functional module (A) 141 into the memory) in the functional module I / F unit The data is transmitted to the functional module (A) 141 via the communication module 134. For example, when the input / output unit 132 receives a command requesting a processing result such as a data read request from the host 101, the input / output unit 132 transmits the processing result (for example, data read from the memory by the functional module (A) 141) to the host 101. I do.
[0054]
The first command decoder 133 stores a first command group including commands that can be processed by the functional units of the host I / F unit (A) 131 and the functional module (A) 141, and stores the received command in the first command group. Is analyzed in the range of the command group. If the received command belongs to the first command group, the content of the received command is transmitted to the functional module (A) 141 through the functional module I / F unit 134, and the functional module (A) 141 performs processing according to the content. I do. The response generator 137 returns a response to the received command. Further, the first command decoder 133 searches whether or not the received command belongs to the first command group, and outputs a first search result as a search result to the arbitration unit 136.
[0055]
The second command decoder 135 stores a second command group including commands that can be processed by the functional units of the host I / F unit (B) 151 and the functional module (B) 161. Is analyzed in the range of the command group. The second command decoder 135 searches whether or not the received command belongs to the second command group, and outputs a second search result as a search result to the arbitration unit 136.
The first command decoder 133 of the host I / F unit (A) 131 is the same block as the second command decoder 155 of the host I / F unit (B) 151, and the host I / F unit (B) 151 The first command decoder 153 is the same block as the second command decoder 135 of the host I / F unit (A) 131. By making the blocks common, the development efficiency of the IC card can be improved.
[0056]
The function module I / F unit 134 performs an I / F process between the host I / F unit (A) 131 and the function module (A) 141. As a result of analyzing the command by the first command decoder 133, if the received command is a command that can be processed by the functional unit, the content of the command is transmitted to the functional module (A) 141 via the functional module I / F unit 134. Is output. The result processed by the functional module (A) 141 is output to the response generating unit 137 via the functional module I / F unit 134.
[0057]
The arbitration unit 136 includes a first search result output from the first command decoder 133, a second search result output from the second command decoder 135, a bus mode (described later), and other functional units (host I / F). The response generator 137 (response to the received command) is controlled based on the state (described later) of the unit (B) 151 and the function module (B) 161).
[0058]
Each functional unit receives an initialization command from the host and performs initialization processing of the functional unit. After the completion of the initialization processing, the functional unit can process a normal command (a command for controlling an operation specific to the functional unit, for example, a data read request or the like) from the host.
In the present embodiment, the states of the functional units indicate two states: a state in which the initialization processing has been completed and a state in which the initialization processing has not been completed. Incomplete state ".
[0059]
When the functional unit including the host I / F unit (A) 131 is in the initialization completed state, the host I / F unit (A) 131 transmits a HIGH-level signal through the state monitoring signal path 171 to the host I / F unit (A). B) When the function unit including the host I / F unit (A) 131 is in an uncompleted initialization state, the LOW level signal is transmitted to the host I / F unit (B) 151 via the state monitoring signal path 171. To be transmitted.
Similarly, when the functional unit including the host I / F (B) 151 is in the initialization completed state, the host I / F (B) 151 transmits a HIGH-level signal through the state monitoring signal path 171 to the host I / F. When the function unit including the host I / F unit (B) 151 is in an uncompleted initialization state, the LOW-level signal is transmitted through the state monitoring signal path 171 to the host I / F unit (B) 151. A) Transmit to 131.
[0060]
The status monitoring signal path 171 allows each host I / F unit to know the status of other functional units (initialization completed status / initialization incomplete status).
Each host I / F unit can respond to a normal command from the host if the functional unit is in the initialization completed state, and does not respond to a normal command from the host if the functional unit is in the uncompleted state. .
[0061]
The bus modes are two modes in communication on the bus line 103 with the host 101, managed by the host I / F unit. The bus mode includes a first I / F mode and a second I / F mode.
In the first I / F mode, the IC card returns a response to the host when a command that any of the functional units of the IC card can process is received, and all the functional units of the IC card do not process. In this mode, a response is not returned to the host when a possible command (illegal command) is received. When receiving the command that can be processed next, the IC card that has received the invalid command responds to the command and sends information to the host that the previous command was invalid.
[0062]
The second I / F mode is a mode in which the IC card always returns a response to a command from the host 101. The IC card returns a response (for example, NACK indicating that the command is invalid) to the host even when receiving a command that cannot be processed by the functional unit of the IC card.
[0063]
The feature of the first embodiment of the present invention is that the second embodiment includes a second command decoder and an arbitration unit which are not included in the related art.
[0064]
The response generation unit 137 generates a response to the host 101 according to the control signal from the arbitration unit 136 and the analysis result of the first command decoder 133 (response differs according to the type of command), and sends the response to the input / output unit 132. Output. In addition, the response generation unit 137 receives the data output by the functional module (A) 141 and outputs the data to the input / output unit 132. A specific response method will be described below.
[0065]
Next, operations of the host I / F unit (A) 131 and the host I / F unit (B) 151 when receiving a command from the host 101 will be described.
2 and 3 are flowcharts showing operations of the host I / F unit (A) 131 and the host I / F unit (B) 151 after receiving a command from the host 101. Here, the host I / F (A) 131 will be described as an example. The host I / F unit (B) 151 can be understood by replacing each code of the host I / F unit (A) 131 in the description with each code of the host I / F unit (B) 151. .
First, it is checked whether the input / output unit 132 has received a command from the host 101. If a command has been received from the host 101, the process proceeds to step S202. In other cases, the process exits (step S201).
[0066]
Next, the first command decoder 133 and the second command decoder 135 analyze the received command and output a first search result and a second search result, respectively.
The arbitration unit 136 determines whether the current bus mode (the mode of communication with the host) is the first I / F mode (only when the IC card can process a received command (type)). (Step for returning a response to the host) regardless of whether or not the IC card can process the received command (type). S202).
If the bus mode is the “second I / F mode”, the process proceeds to step S203; otherwise (the first I / F mode), the process proceeds to step S301 (FIG. 3).
[0067]
[Processing in Second I / F Mode]
The arbitration unit 136 determines whether the received command is a command for the host I / F unit (own function unit) based on the first search result (step S203). If a first search result indicating that the received command belongs to the first command group is obtained, it is determined that the received command is for the host I / F unit (host I / F unit (A) 131). If a first search result indicating that the received command does not belong to the first command group is obtained, it is determined that the received command is not a command for the host I / F unit (A) 131.
[0068]
If the command is for the host I / F (A) 131 (dedicated to the host I / F, or a command common to the host I / F and another host I / F), the first command decoder 133 Outputs command content (command) information to the functional module (A) 141 via the functional module I / F unit 134. The functional module (A) 141 performs processing according to the command (step S204).
At this time, if the state of the host I / F unit (A) 131 is an initialization incomplete state, processing is performed only when the received command is an initialization command.
[0069]
Next, the arbitrating unit 136 determines whether the received command is a command for another host I / F unit (host I / F unit (B) 151) based on the second search result (step S205). ). If a second search result indicating that the received command belongs to the second command group is obtained, it is determined that the received command is a command for the host I / F unit (B) 151. If a second search result indicating that the received command does not belong to the second command group is obtained, it is determined that the received command is not a command for the host I / F (B) 151.
If the received command is not a command for the host I / F (B) 151, the process proceeds to step S206.
[0070]
Next, the arbitration unit 136 determines whether the host I / F (A) 131 needs to respond to the host (step S206).
Whether the host I / F can respond to the host depends on the contents of the received command, the state of the host I / F (own function unit), and the other host I / F (other function unit). And the value of the response priority flag.
The “response priority flag” is held by each host I / F unit. When this flag is ON, “response priority is present”, and when it is OFF, “response priority is not present”. The value of the response priority flag is a predetermined fixed value.
[0071]
The arbitration unit 136 determines the response priority flag, the search result of the first command decoder 133, the search result of the second command decoder 135, the host I / F unit (A) 131, and the host I / F unit (B) 151. It is determined whether or not the own host I / F unit (host I / F unit (A) 131) can respond to the host 101 based on the state of (1).
[0072]
FIG. 4 is a table (response determination table) showing the presence / absence of a response from the host I / F unit to the host 101 and the above-described conditions for determining the response.
The response determination table has four sections according to the content of the received command.
“Command of own host I / F unit” indicates that the command is dedicated to the own host I / F unit (own function unit). “Command of other host I / F unit” indicates that the command is dedicated to another host I / F unit (other functional unit). “Common command” indicates that the command is common to the host I / F and other host I / Fs. The “undefined command” indicates that the command is not compatible with both the host I / F and other host I / Fs.
[0073]
In the leftmost item, “the state of the host I / F unit” indicates the state of the function unit. “○” indicates the initialization completed state, and “×” indicates the initialization not completed state.
The “state of another host I / F unit” indicates a state of another functional unit. “○” indicates the initialization completed state, and “×” indicates the initialization not completed state.
“Priority of own host I / F unit” indicates the state of the response priority flag. “○” indicates that the response right has been initially set (ON), and “×” indicates that the response right has not been set (OFF).
In “response presence / absence”, “」 ”indicates that the host I / F unit returns a response to the host, and“ × ”indicates that the other host I / F unit returns a response. It indicates that.
[0074]
In step S206, whether the host I / F (A) 131 needs to respond to the host is determined based on the response determination table in FIG. In the process of step S206, since the received command is dedicated to the host I / F unit, the leftmost section (own host I / F) of the highest order item (contents of the received command) in the response determination table. It is sufficient to make a judgment only with the command of the section.
When the host I / F unit (A) 131 needs to send a response to the host, the arbitration unit 136 requests the response generation unit 137 to generate a response to the host 101. The response generated by the response generation unit 137 is transmitted to the host 101 via the input / output unit 132 (Step S207), and the process ends.
[0075]
If the host I / F unit (A) 131 does not need to send a response to the host, the host I / F unit (A) 131 ends the process without returning a response to the host (the host I / F unit (B) ) 151 responds to the host (step S212).
In step S205, when the received command is also a command for the host I / F unit (B) 151 (the received command is a command common to the host I / F unit (A) 131 and the host I / F unit (B) 151). In the case, the host I / F unit (A) 131 determines whether it is necessary to send a response to the host (step S208).
[0076]
In the process of step S208, since the received command is a command common to the host I / F unit (A) 131 and the host I / F unit (B) 151, the highest item (contents of the received command) in the response determination table of FIG. ) May be determined only in the third section (common command) from the left.
If the host I / F unit (A) 131 needs to send a response to the host, the process of step S207 is performed, and this process ends.
If the host I / F unit (A) 131 does not need to send a response to the host, the host I / F unit (A) 131 ends the process without returning a response to the host (the host I / F unit (B) ) 151 responds to the host (step S212).
[0077]
In step S203, if the received command is not a command for the host I / F unit (A) 131, the arbitration unit 136 determines that the received command is for another host I / F unit (host I / F unit (B) 151). It is determined whether the command is a command (step S209). If the command is for the host I / F (B) 151, the arbitration unit 136 determines whether the host I / F (A) 131 needs to respond to the host (step S210).
[0078]
In the process of step S210, since the received command is a command dedicated to the host I / F unit (B) 151, the second category from the left (the contents of the received command) of the top item (contents of the received command) in the response determination table of FIG. The determination may be made based only on commands of other host I / F units).
If the host I / F unit (A) 131 needs to send a response to the host, the process of step S207 is performed, and this process ends.
If the host I / F unit (A) 131 does not need to send a response to the host, the host I / F unit (A) 131 ends the process without returning a response to the host (the host I / F unit (B) ) 151 responds to the host (step S212).
[0079]
If the received command is not a command for the host I / F (B) 151 in step S209, the arbitration unit 136 determines whether the host I / F (A) 131 needs to respond to the host. (Step S211).
In the process of step S211, since the received command is a command that is not supported by the host I / F unit (A) 131 and the host I / F unit (B) 151, the topmost item ( The determination may be made only in the fourth section (undefined command) from the left among the received command contents.
If the host I / F unit (A) 131 needs to send a response to the host, the process of step S207 is performed, and this process ends.
If the host I / F unit (A) 131 does not need to send a response to the host, the host I / F unit (A) 131 ends the process without returning a response to the host (the host I / F unit (B) ) 151 responds to the host (step S212).
[0080]
[Processing in First I / F Mode (FIG. 3)]
Next, a process in the case where it is determined in S202 that the current bus mode is the first I / F mode will be described with reference to FIG.
The arbitration unit 136 determines whether the received command is a command for the host I / F unit (host I / F unit (A) 131) based on the analysis result (first search result) of step S202 (step S202). S301).
When the command is a command for the host I / F unit (dedicated to the host I / F unit or a common command), the command content (command) information is sent to the function module (A) 141 via the function module I / F unit 134. Is output. The functional module (A) 141 performs processing according to the instruction (step S302).
At this time, if the state of the host I / F unit (A) 131 is an initialization incomplete state, processing is performed only when the received command is an initialization command.
[0081]
Next, the arbitrating unit 136 determines whether or not the received command is also a command for another host I / F unit (host I / F unit (B) 151) based on the second search result (step S303). . If the command is not a command for the host I / F unit (B) 151, the arbitration unit 136 determines whether the host I / F unit (A) 131 needs to respond to the host (step S304).
In the process of step S304, since the received command is a command dedicated to the host I / F unit (A) 131, the leftmost section (self) of the top item (contents of the received command) of the response determination table in FIG. The determination may be made only by the command of the host I / F unit).
[0082]
However, in the first I / F mode, a response to the host is not returned when the processing cannot be performed by the own host I / F unit and another host I / F unit. In the state where the initialization is not completed (the position of “x” in the response determination table of FIG. 4), no response is returned.
[0083]
In step S304, when the host I / F unit (A) 131 needs to respond to the host, the arbitration unit 136 requests the response generation unit 137 to generate a response to the host 101. The response generated by the response generation unit 137 is transmitted to the host 101 via the input / output unit 132 (Step S305). At this time, when the invalid flag is ON (when the previous received command is invalid), the response generation unit 137 sends a predetermined bit (invalid command of 48 bits) of the response (command length is 48 bits). Flag bit). As a result, the host 101 can recognize that the immediately preceding command is an invalid command (a command that cannot be processed by any host I / F unit).
[0084]
In the first I / F mode, the improper flag means that all the host I / F units on the multi-function module card (the host I / F unit (A) 131 and the host I / F unit (A) 131 in the first embodiment) receive a command from the host. I / F unit (B) 151) is a flag that is turned on when both cannot be processed, and is managed by each host I / F unit. The invalid flag is cleared (OFF) when any one of the host I / F units receives a command that can be processed.
Therefore, when a plurality of host I / F units are operating, each illegal flag indicates the same value.
The arbitration unit 136 turns the fraud flag OFF (if ON) (step S306), and the process ends.
[0085]
In step S304, if the host I / F unit (A) 131 does not need to respond to the host (if the host I / F unit (A) 131 is in the initialization incomplete state), the arbitration unit 136 sets the invalid flag. Is set to ON (step S312), and this processing ends. (Do not respond to the host.)
[0086]
In step S303, when the received command is also a command for another host I / F unit (host I / F unit (B) 151) (the received command is the host I / F unit (A) 131 and the host I / F unit) (B) In the case of a common command in 151), the arbitration unit 136 determines whether the host I / F unit (A) 131 needs to send a response to the host (step S307).
In the process of step S307, since the received command is a command common to the host I / F unit (A) 131 and the host I / F unit (B) 151, the highest order item (of the received command) in the response determination table of FIG. Only the third category (common command) from the left in (contents) needs to be determined.
However, as in step S304, no response is returned if the status of the host I / F unit is not yet initialized (the location of “x” in the response determination table of FIG. 4).
[0087]
If it is determined in step S307 that the host I / F unit (A) 131 needs to respond to the host, steps S305 (response processing to the host) and S306 (clearing the invalid flag) are executed, and the processing ends. I do. Steps S305 and S306 have already been described.
If it is determined in step S307 that the host I / F unit (A) 131 does not need to respond to the host, the arbitration unit 136 outputs the host I / F unit (A) based on the input signal from the state monitoring signal path 171. B) It is determined whether or not 151 is in the initialization completed state (step S308). If the host I / F (B) 151 is in the initialization completed state, the host I / F (B) 151 responds to the host 101 (step S309). The arbitration unit 136 turns the fraud flag OFF (if ON) (step S306), and the process ends.
[0088]
If the host I / F unit (B) 151 is in the initialization-uncompleted state in step S308, the arbitration unit 136 turns the fraud flag ON (step S312), and ends this processing. (Do not respond to the host.)
If the received command is not a command for the own host I / F unit (host I / F unit (A) 131) in step S301, the arbitrating unit 136 determines whether the received command is another host I / F unit based on the second search result. It is determined whether the command is for the F section (host I / F section (B) 151) (step S310). If the command is for the host I / F unit (B) 151, the arbitration unit 136 sets the host I / F unit (B) 151 to the initialization completed state based on the input signal from the state monitoring signal path 171. Is determined (step S311).
[0089]
If the host I / F (B) 151 is in the initialization completed state in step S311, the host I / F (B) 151 responds to the host 101 (step S309). The arbitration unit 136 turns the fraud flag OFF (if ON) (step S306), and the process ends.
If the host I / F (B) 151 is in the initialization-uncompleted state in step S311, the arbitration unit 136 turns on the invalid flag (step S312), and ends this processing. (Do not respond to the host.)
[0090]
In the first I / F mode, when a command that cannot be processed by all host I / F units on the IC card is received, the invalid flag is turned on (step S312). Next, when receiving and responding to a command that can be processed by the host I / F unit, a predetermined bit (invalid flag bit) of the response command is set (set to 1) and the previous command is invalid. The fact that there is is transmitted to the host (step S305). Then, the unauthorized flag is turned off (step S306).
Further, after receiving a command that cannot be processed by all host I / F units on the IC card, a command that can be processed by any one of the host I / F units is received, and the other host I / F units respond. In this case (step S309), the unauthorized flag is turned off (step S306).
[0091]
Although the IC card according to the first embodiment has two functional units, the IC card may have three or more functional units. For example, when the IC card has three functional units, the second command decoder has the same number of second command groups as the number of other functional units, and outputs the same number of second search results. Each second command group is composed of commands that can be processed by other corresponding host I / F units. Each second search result indicates whether the received command belongs to one second command group.
Each of the host I / F units is connected to the other two host I / F units via a state monitoring signal path, and the state of the two other host I / F units (the state of the functional unit) is changed. You can know. When one other host I / F unit is in the uninitialized state, the arbitrating unit does not use the second search result of the other host I / F unit in the uninitialized state. Otherwise, the IC card having three or more functional units is the same as the IC card of the first embodiment.
[0092]
<< Example 2 >>
Second Embodiment A multifunction module card (multifunction IC card) according to a second embodiment of the present invention and a control method thereof will be described with reference to FIG.
FIG. 5 is a block diagram showing a configuration of the multi-function module card according to the second embodiment of the present invention.
In FIG. 5, reference numeral 101 denotes a host (in this embodiment, a personal computer) and 511 a multi-function module card. The multi-function module card 511 is connected to the input / output unit 102 of the host 101 via the bus line 103.
The host 101 and the multi-function module card of the second embodiment inserted in the host perform master / slave type communication in which the host is the master and the multi-function module card 511 is the slave.
[0093]
The multifunction module card 511 (FIG. 5) according to the second embodiment and the multifunction module card 111 (FIG. 1) according to the first embodiment have a difference in a method of controlling transmission of a response to a host. Other points are the same. Components having the same functions as those in the first embodiment are denoted by the same reference numerals as those in FIG. 1, and description thereof will be omitted.
The multifunction module card 511 includes a bus control unit 121, a host I / F unit (A) 531, a function module (A) 141, a host I / F unit (B) 551, and a function module (B) 161.
The host I / F (A) 531 and the functional module (A) 141 corresponding thereto constitute a functional unit (a memory unit in the embodiment).
The host I / F unit (B) 551 and the corresponding functional module (B) 161 constitute a functional unit (in the embodiment, a digital camera unit).
[0094]
The host I / F unit (A) 531 includes an input / output unit 132, a first command decoder 133, a function module I / F unit 134, an arbitration unit 533, and a response generation unit 137.
The host I / F (B) 551 includes an input / output unit 152, a first command decoder 153, a function module I / F 154, an arbitration unit 553, and a response generation unit 157. The arbitration unit 533 of the host I / F unit (A) 531 and the arbitration unit 553 of the host I / F unit (B) 551 are provided with a communication path 561 between the host I / F units, which is a transmission path capable of transmitting and receiving data. Are connected to each other.
[0095]
The multi-function module card according to the second embodiment differs from the multi-function module card according to the first embodiment in that the multi-function module card does not have the second command decoder, but has a communication path 561 between host I / F sections instead. Otherwise, they are identical.
The input / output unit, the first command decoder, the functional module I / F unit, and the response generation unit have the same functions as those in the first embodiment, and thus description thereof will be omitted.
[0096]
Upon receiving the first search result from the first command decoder 133 (153), the arbitration unit 533 (553) transmits the first search result to another host I / F via the host I / F unit communication path 561. It notifies the arbitration unit 553 (533) of the F section.
In the host I / F of the second embodiment, the first search result of the first command decoder sent from the arbitration unit of another host I / F is the first search result of the host I / F of the first embodiment. 2 corresponds to a second search result of the second command decoder. In the first embodiment, the status of the other host I / F unit (initialization completed / initialization not completed) is used. This is because the arbitration unit of the other host I / F unit transmits the first command decoder. If the analysis result is sent, it is in the initialization completed state, and if it is not sent, it can be handled by determining that the initialization is incomplete.
[0097]
Also, the arbitration unit 533 (553) arbitrates information on the state (initialization completed / initialization not completed) of the host I / F unit (A) 531 ((B) 551) by another host I / F unit. The signal may be output to the unit 553 (533). In this case, the arbitration unit 533 (553) determines the status of other functional units (initialization completed / initialization not completed) from this information.
[0098]
The arbitration unit 533 (553) outputs the first search result of the first command decoder 133 (153), the first search result of the first command decoder 153 (133) of another host I / F unit, and the other The response generator 137 (157) is controlled based on the status of the functional unit and the status of the bus mode (described in the first embodiment). The response generator 137 (157) responds to the received command according to the control.
[0099]
【The invention's effect】
According to the present invention, an IC that allows a host to correctly recognize a response from each functional unit without interrupting communication and without colliding with responses from a plurality of functional units mounted on one IC card. An advantageous effect that the card and its control method can be realized is obtained.
According to the present invention, there is obtained an advantageous effect that an IC card and a control method thereof that can accurately control a plurality of functional units mounted on one IC card with a simple configuration can be realized.
[0100]
According to the present invention, it is possible to realize a multi-function type IC card capable of smoothly communicating with a host while maintaining compatibility with communication performed by a single-function IC card with a host and a control method thereof. An advantageous effect is obtained.
ADVANTAGE OF THE INVENTION According to this invention, while maintaining the characteristic that a single-function IC card communicates with a host by a simple method, the multifunctional IC card which communicates smoothly with a host and the control method thereof can be realized. Effects can be obtained.
[0101]
According to the present invention, an IC card having a plurality of functions can be realized only by connecting functional units in parallel. ADVANTAGE OF THE INVENTION According to this invention, the advantageous effect of being able to implement | achieve the multifunctional IC card which can be developed at low cost in a short time and the control method thereof can be obtained.
Further, according to the present invention, there is provided a multifunctional IC card capable of controlling each functional unit in an optimal manner according to a plurality of modes in which a method of responding to a command is different between a host and a multifunctional IC card. The advantageous effect that the control method can be realized is obtained.
[Brief description of the drawings]
FIG. 1 is a block diagram illustrating an internal configuration of a multi-function module card according to a first embodiment of the present invention.
FIG. 2 is a flowchart illustrating a response control operation (including a second I / F mode) of the multi-function module card according to the first embodiment of the present invention.
FIG. 3 is a flowchart illustrating a response control operation of the multi-function module card in the first I / F mode according to the first embodiment of the present invention.
FIG. 4 is a table for determining “the presence or absence of a response” in the first embodiment of the present invention.
FIG. 5 is a block diagram illustrating an internal configuration of a multi-function module card according to a second embodiment of the present invention.
FIG. 6 is a block diagram illustrating a configuration of an IC card having a plurality of functional units according to Conventional Example 2.
[Explanation of symbols]
101 Host
102, 132, 152 Input / output unit
103 bus line
111, 511, 601 Multi-function module card
121 Bus control unit
131,531 Host I / F (A)
133, 153 First command decoder
134, 154 Function module I / F section
135, 155 second command decoder
136, 156, 533, 553 Arbitration unit
137, 157 Response generator
141 Function Module (A)
151, 551 Host I / F (B)
161 Function module (B)
171 Signal path for status monitoring
561 Communication path between host I / F
611, 621 functional unit
612, 622 Host I / F section
613, 623 Function module

Claims (21)

ホスト機器からのコマンドを受信するホストインタフェース部と、前記ホストインタフェース部が受信した前記コマンド(以下「受信コマンド」と呼ぶ。)に従い処理を行う機能動作部と、をそれぞれ有する複数の機能ユニットを有し、
前記ホストインタフェース部は、
その機能ユニットが処理可能なコマンドからなる第1のコマンド群と他の機能ユニットが処理可能なコマンドからなる第2のコマンド群とを記憶し、受信コマンドが前記第1のコマンド群に属するか否かを検索してその検索結果である第1の検索結果を出力し、受信コマンドが前記第2のコマンド群に属するか否かを検索してその検索結果である第2の検索結果を出力するコマンドデコーダと、
前記受信コマンドに対する応答を生成する応答生成部と、
前記第1の検索結果及び前記第2の検索結果に応じて前記応答生成部を制御する調停部と、
を有することを特徴とするICカード。
It has a plurality of functional units each having a host interface unit for receiving a command from a host device, and a function operation unit for performing processing in accordance with the command (hereinafter, referred to as a “received command”) received by the host interface unit. And
The host interface unit includes:
A first command group consisting of commands that can be processed by the functional unit and a second command group consisting of commands that can be processed by other functional units are stored, and whether a received command belongs to the first command group is determined. And outputs a first search result as a search result, searches whether the received command belongs to the second command group, and outputs a second search result as the search result. A command decoder;
A response generation unit that generates a response to the received command;
An arbitration unit that controls the response generation unit according to the first search result and the second search result;
An IC card comprising:
前記ホストインタフェース部は他の機能ユニットの状態を検知し、前記調停部は前記他の機能ユニットの状態を前記応答生成部を制御する条件に加える、
ことを特徴とする請求項1に記載のICカード。
The host interface unit detects a state of another functional unit, and the arbitration unit adds the state of the other functional unit to a condition for controlling the response generation unit.
The IC card according to claim 1, wherein:
前記コマンドデコーダは、
前記第1のコマンド群を記憶し、受信コマンドが前記第1のコマンド群に属するか否かを検索し、その検索結果である第1の検索結果を出力する第1のコマンドデコーダと、
前記第2のコマンド群を記憶し、受信コマンドが前記第2のコマンド群に属するか否かを検索し、その検索結果である第2の検索結果を出力する第2のコマンドデコーダと、
を有することを特徴とする請求項1又は請求項2に記載のICカード。
The command decoder,
A first command decoder that stores the first command group, searches whether a received command belongs to the first command group, and outputs a first search result as a search result;
A second command decoder that stores the second command group, searches whether a received command belongs to the second command group, and outputs a second search result as a search result;
The IC card according to claim 1, wherein the IC card has:
ホスト機器からのコマンドを受信するホストインタフェース部と、前記ホストインタフェース部が受信した前記コマンド(以下「受信コマンド」と呼ぶ。)に従い処理を行う機能動作部と、をそれぞれ有する複数の機能ユニットを有し、
前記ホストインタフェース部は、
その機能ユニットが処理可能なコマンドからなる第1のコマンド群を記憶し、受信コマンドが前記第1のコマンド群に属するか否かを検索してその検索結果である第1の検索結果を出力するコマンドデコーダと、
前記受信コマンドに対する応答を生成する応答生成部と、
前記第1の検索結果を他の機能ユニットの前記ホストインタフェース部に伝送し、他の機能ユニットの前記ホストインタフェース部から伝送された、受信コマンドが他の機能ユニットの前記ホストインタフェース部の前記第1のコマンド群に属するか否かの検索結果である前記第1の検索結果(以下、他の機能ユニットのホストインタフェース部が出力した第1の検索結果を「第2の検索結果」と呼ぶ。)を入力し、前記第1の検索結果及び前記第2の検索結果に応じて前記応答生成部を制御する調停部と、
を有することを特徴とするICカード。
It has a plurality of functional units each having a host interface unit for receiving a command from a host device, and a function operation unit for performing processing in accordance with the command (hereinafter, referred to as a “received command”) received by the host interface unit. And
The host interface unit includes:
A first command group consisting of commands that can be processed by the functional unit is stored, it is searched whether a received command belongs to the first command group, and a first search result as a search result is output. A command decoder;
A response generation unit that generates a response to the received command;
The first search result is transmitted to the host interface unit of another functional unit, and the received command transmitted from the host interface unit of another functional unit is the first command of the host interface unit of another functional unit. The first search result (hereinafter, the first search result output by the host interface unit of another functional unit is referred to as a "second search result") as a search result of whether or not the command group belongs to the command group. And an arbitration unit that controls the response generation unit according to the first search result and the second search result;
An IC card comprising:
前記調停部は、更に、自機能ユニットの状態を他の機能ユニットの調停部に出力し且つ前記他の機能ユニットの調停部から他の機能ユニットの状態を入力し、前記他の機能ユニットの状態を前記応答生成部を制御する条件に加える、
ことを特徴とする請求項4に記載のICカード。
The arbitration unit further outputs the state of the own function unit to the arbitration unit of another function unit, and inputs the state of another function unit from the arbitration unit of the other function unit, and outputs the state of the other function unit. Is added to the condition for controlling the response generator,
The IC card according to claim 4, wherein:
前記ホストインタフェース部は、
受信コマンドが前記第1のコマンド群に属するコマンドであれば応答し、
受信コマンドが前記第2のコマンド群に属するコマンドであれば応答せず、
受信コマンドが前記第1のコマンド群及び前記第2のコマンド群のいずれにも属さないコマンドであれば、予め定められた機能ユニットの前記ホストインタフェース部が応答する、
ことを特徴とする請求項1から請求項5のいずれかの請求項に記載のICカード。
The host interface unit includes:
If the received command is a command belonging to the first command group, reply
If the received command is a command belonging to the second command group, it does not respond,
If the received command does not belong to any of the first command group and the second command group, the host interface unit of a predetermined functional unit responds.
The IC card according to any one of claims 1 to 5, wherein:
前記ホストインタフェース部は、
受信コマンドが前記第1のコマンド群に属するコマンドであれば応答し、
受信コマンドが前記第2のコマンド群に属するコマンドであれば応答せず、
受信コマンドが前記第1のコマンド群及び前記第2のコマンド群のいずれにも属さないコマンドであれば応答せず且つ受信コマンドが不正であることを示すフラグをセットし、次の受信コマンドが前記第1のコマンド群に属するコマンドであれば、その受信コマンドに応答すると共に先の受信コマンドが不正であるという情報をホストに送り、且つ前記フラグをリセットする、
ことを特徴とする請求項1から請求項5のいずれかの請求項に記載のICカード。
The host interface unit includes:
If the received command is a command belonging to the first command group, reply
If the received command is a command belonging to the second command group, it does not respond,
If the received command does not belong to any of the first command group and the second command group, it does not respond and sets a flag indicating that the received command is invalid. If the command belongs to the first command group, it responds to the received command, sends information indicating that the received command is invalid to the host, and resets the flag.
The IC card according to any one of claims 1 to 5, wherein:
受信コマンドが前記第1のコマンド群にも前記第2のコマンド群にも属するコマンドであれば、予め定められた機能ユニットの前記ホストインタフェース部が応答することを特徴とする請求項6又は請求項7に記載のICカード。7. The host interface unit of a predetermined functional unit responds if the received command is a command belonging to both the first command group and the second command group. 7. The IC card according to 7. 前記ホストインタフェース部は、前記第1のコマンド群及び前記第2のコマンド群のいずれにも属さない受信コマンドの次に、前記第2のコマンド群に属するコマンドを受信した場合は、応答せず、前記フラグをリセットすることを特徴とする請求項7に記載のICカード。The host interface unit does not respond when a command belonging to the second command group is received next to a received command not belonging to any of the first command group and the second command group, The IC card according to claim 7, wherein the flag is reset. 前記第1のコマンド群及び前記第2のコマンド群のいずれにも属さない受信コマンドの次に、前記第1のコマンド群及び前記第2のコマンド群のいずれにも属するコマンドを受信した場合は、
予め定められた機能ユニットの前記ホストインタフェース部がその受信コマンドに応答すると共に先の受信コマンドが不正であるという情報をホストに送り、且つ前記フラグをリセットし、
予め定められた機能ユニット以外の機能ユニットの前記ホストインタフェース部は応答せず、前記フラグをリセットすることを特徴とする請求項7に記載のICカード。
When a command belonging to any of the first command group and the second command group is received next to a received command not belonging to any of the first command group and the second command group,
The host interface unit of the predetermined functional unit responds to the received command and sends information to the host that the previous received command is invalid, and resets the flag,
The IC card according to claim 7, wherein the host interface unit of a functional unit other than a predetermined functional unit does not respond and resets the flag.
前記第1のコマンド群に属するコマンドを受信した場合には応答を返し、前記第1のコマンド群に属さないコマンドを受信した場合には応答を返さない第1のインタフェースモードと、
受信コマンドに必ず応答を返す第2のインタフェースモードと、
を有し、
前記第1のインタフェースモードにおいては、請求項7に記載のICカードとして機能し、前記第2のインタフェースモードにおいては請求項6に記載のICカードとして機能することを特徴とするICカード。
A first interface mode in which a response is returned when a command belonging to the first command group is received, and a response is not returned when a command not belonging to the first command group is received;
A second interface mode that always returns a response to the received command;
Has,
7. An IC card functioning as the IC card according to claim 7 in the first interface mode, and functioning as the IC card according to claim 6 in the second interface mode.
ホスト機器からのコマンドを受信するホストインタフェース部と、前記ホストインタフェース部が受信した前記コマンド(以下「受信コマンド」と呼ぶ。)に従い処理を行う機能動作部と、をそれぞれ有する複数の機能ユニットを有するICカードの制御方法であって、
各機能ユニットにおいて、受信コマンドがその機能ユニットが処理可能なコマンドからなる第1のコマンド群に属するか否かを検索してその検索結果である第1の検索結果を出力し、受信コマンドが他の機能ユニットが処理可能なコマンドからなる第2のコマンド群に属するか否かを検索してその検索結果である第2の検索結果を出力するコマンド検索ステップと、
各機能ユニットにおいて、前記第1の検索結果及び前記第2の検索結果に応じて、前記受信コマンドに対して応答を生成する応答生成ステップと、
を有することを特徴とするICカードの制御方法。
It has a plurality of functional units each having a host interface unit for receiving a command from a host device, and a function operation unit for performing processing in accordance with the command received by the host interface unit (hereinafter, referred to as a “reception command”). A method of controlling an IC card,
In each functional unit, a search is performed to determine whether the received command belongs to a first command group consisting of commands that can be processed by the functional unit, and a first search result as a search result is output. A command search step of searching whether or not a functional unit belongs to a second command group consisting of processable commands and outputting a second search result as a search result;
A response generating step of generating a response to the received command in each functional unit according to the first search result and the second search result;
A control method for an IC card, comprising:
他の機能ユニットの状態を検知する状態検知ステップを更に有し、
前記応答生成ステップにおいて前記他の機能ユニットの状態を応答生成の条件に加える、
ことを特徴とする請求項12に記載のICカードの制御方法。
Further comprising a state detecting step of detecting a state of another functional unit,
Adding the state of the other functional unit to a condition for generating a response in the response generating step;
The method for controlling an IC card according to claim 12, wherein:
ホスト機器からのコマンドを受信するホストインタフェース部と、前記ホストインタフェース部が受信した前記コマンド(以下「受信コマンド」と呼ぶ。)に従い処理を行う機能動作部と、をそれぞれ有する複数の機能ユニットを有するICカードの制御方法であって、
各機能ユニットにおいて、受信コマンドがその機能ユニットが処理可能なコマンドからなる前記第1のコマンド群に属するか否かを検索してその検索結果である第1の検索結果を出力するコマンド検索ステップと、
各機能ユニットにおいて、前記第1の検索結果を他の機能ユニットの前記ホストインタフェース部に伝送し、他の機能ユニットの前記ホストインタフェース部から伝送された、受信コマンドが他の機能ユニットの前記ホストインタフェース部の前記第1のコマンド群に属するか否かの検索結果である前記第1の検索結果(以下、他の機能ユニットのホストインタフェース部が出力した第1の検索結果を「第2の検索結果」と呼ぶ。)を入力する入力ステップと、
各機能ユニットにおいて、前記第1の検索結果及び前記第2の検索結果に応じて、前記受信コマンドに対して応答を生成する応答生成ステップと、
を有することを特徴とするICカードの制御方法。
It has a plurality of functional units each having a host interface unit for receiving a command from a host device, and a function operation unit for performing processing in accordance with the command received by the host interface unit (hereinafter, referred to as a “reception command”). A method of controlling an IC card,
A command search step of, in each function unit, searching whether a received command belongs to the first command group consisting of commands that can be processed by the function unit, and outputting a first search result as a search result; ,
In each functional unit, the first search result is transmitted to the host interface unit of another functional unit, and the received command transmitted from the host interface unit of the other functional unit is transmitted to the host interface of another functional unit. The first search result (hereinafter, the first search result output by the host interface unit of another functional unit is a “second search result”) that is a search result as to whether or not the first command group belongs to the first command group. ) Is input.)
A response generating step of generating a response to the received command in each functional unit according to the first search result and the second search result;
A control method for an IC card, comprising:
自機能ユニットの状態を含む情報を他の機能ユニットのホストインタフェース部に出力する状態出力ステップと、
他の機能ユニットのホストインタフェース部から他の機能ユニットの状態を含む情報を入力する状態入力ステップと、を更に有し、
前記応答生成ステップにおいて前記他の機能ユニットの状態を応答生成の条件に加える、
ことを特徴とする請求項14に記載のICカードの制御方法。
A status output step of outputting information including the status of the own functional unit to the host interface unit of another functional unit,
A status input step of inputting information including the status of the other functional unit from the host interface unit of the other functional unit,
Adding the state of the other functional unit to a condition for generating a response in the response generating step;
The method of controlling an IC card according to claim 14, wherein:
前記応答生成ステップが、
受信コマンドが前記第1のコマンド群に属するコマンドであれば応答する第1の応答ステップと、
受信コマンドが前記第2のコマンド群に属するコマンドであれば応答しない第2の応答ステップと、
受信コマンドが前記第1のコマンド群及び前記第2のコマンド群のいずれにも属さないコマンドであれば、予め定められた機能ユニットの前記ホストインタフェース部が応答する第3の応答ステップと、
を有することを特徴とする請求項12から請求項15のいずれかの請求項に記載のICカードの制御方法。
The response generating step includes:
A first response step of responding if the received command belongs to the first command group;
A second response step of not responding if the received command is a command belonging to the second command group;
If the received command is a command that does not belong to any of the first command group and the second command group, a third response step in which the host interface unit of a predetermined functional unit responds;
The method of controlling an IC card according to any one of claims 12 to 15, comprising:
前記応答生成ステップが、
受信コマンドが前記第1のコマンド群に属するコマンドであれば応答する第1の応答ステップと、
受信コマンドが前記第2のコマンド群に属するコマンドであれば応答しない第2の応答ステップと、
受信コマンドが前記第1のコマンド群及び前記第2のコマンド群のいずれにも属さないコマンドであれば応答せず且つ受信コマンドが不正であることを示すフラグをセットする第4の応答ステップと、
前記第4の応答ステップの次に受信するコマンドが前記第1のコマンド群に属するコマンドであれば、その受信コマンドに応答すると共に先の受信コマンドが不正であるという情報をホストに送り、且つ前記フラグをリセットする第5の応答ステップと、
を有することを特徴とする請求項12から請求項15のいずれかの請求項に記載のICカードの制御方法。
The response generating step includes:
A first response step of responding if the received command belongs to the first command group;
A second response step of not responding if the received command is a command belonging to the second command group;
A fourth response step of not responding if the received command does not belong to any of the first command group and the second command group and setting a flag indicating that the received command is invalid;
If the command received after the fourth response step is a command belonging to the first command group, it responds to the received command and sends information to the host that the previous received command is invalid, and A fifth response step of resetting the flag;
The method of controlling an IC card according to any one of claims 12 to 15, comprising:
前記応答生成ステップが、受信コマンドが前記第1のコマンド群にも前記第2のコマンド群にも属するコマンドであれば、予め定められた機能ユニットの前記ホストインタフェース部が応答する第6の応答ステップを有することを特徴とする請求項16又は請求項17に記載のICカードの制御方法。A sixth response step to which the host interface unit of a predetermined functional unit responds if the received command is a command belonging to both the first command group and the second command group; The method for controlling an IC card according to claim 16, wherein the method comprises: 前記応答生成ステップが、前記第4の応答ステップの次に受信するコマンドが前記第2のコマンド群に属するコマンドであれば、応答せず、前記フラグをリセットする第7の応答ステップを有することを特徴とする請求項17に記載のICカードの制御方法。The response generating step may include a seventh response step of resetting the flag without responding if the command received next to the fourth response step belongs to the second command group. The method for controlling an IC card according to claim 17, wherein: 前記応答生成ステップが、
前記第4の応答ステップの次に受信するコマンドが前記第1のコマンド群及び前記第2のコマンド群のいずれにも属するコマンドであれば、
予め定められた機能ユニットの前記ホストインタフェース部がその受信コマンドに応答すると共に先の受信コマンドが不正であるという情報をホストに送り、且つ前記フラグをリセットし、
予め定められた機能ユニット以外の機能ユニットの前記ホストインタフェース部は応答せず、前記フラグをリセットする、
第8の応答ステップを有することを特徴とする請求項17に記載のICカードの制御方法。
The response generating step includes:
If the command received after the fourth response step is a command belonging to any of the first command group and the second command group,
The host interface unit of the predetermined functional unit responds to the received command and sends information to the host that the previous received command is invalid, and resets the flag,
The host interface unit of a functional unit other than a predetermined functional unit does not respond, and resets the flag.
The method according to claim 17, further comprising an eighth response step.
前記第1のコマンド群に属するコマンドを受信した場合には応答を返し、前記第1のコマンド群に属さないコマンドを受信した場合には応答を返さない第1のインタフェースモードと、
受信コマンドに必ず応答を返す第2のインタフェースモードと、
を有し、
前記第1のインタフェースモードにおいては、請求項17に記載の制御方法を実行し、前記第2のインタフェースモードにおいては請求項16に記載の制御方法を実行することを特徴とするICカードの制御方法。
A first interface mode in which a response is returned when a command belonging to the first command group is received, and a response is not returned when a command not belonging to the first command group is received;
A second interface mode that always returns a response to the received command;
Has,
The control method according to claim 17, wherein the control method according to claim 17 is executed in the first interface mode, and the control method according to claim 16 is executed in the second interface mode. .
JP2002171996A 2002-06-12 2002-06-12 IC card and control method thereof Expired - Lifetime JP4001511B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002171996A JP4001511B2 (en) 2002-06-12 2002-06-12 IC card and control method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002171996A JP4001511B2 (en) 2002-06-12 2002-06-12 IC card and control method thereof

Publications (2)

Publication Number Publication Date
JP2004021351A true JP2004021351A (en) 2004-01-22
JP4001511B2 JP4001511B2 (en) 2007-10-31

Family

ID=31171709

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002171996A Expired - Lifetime JP4001511B2 (en) 2002-06-12 2002-06-12 IC card and control method thereof

Country Status (1)

Country Link
JP (1) JP4001511B2 (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008059012A (en) * 2006-08-29 2008-03-13 Hitachi Ltd Wireless ic memory, access device for wireless ic memory and access control method
JP2008530936A (en) * 2005-02-17 2008-08-07 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Device and method of operating a device
JP2011516933A (en) * 2007-10-28 2011-05-26 テゴ,インコーポレイテッド Method and system for sharing power in a multiple radio frequency network node RFID tag
US8558699B2 (en) 2005-12-09 2013-10-15 Tego Inc. Multiple radio frequency network node RFID tag
US8941470B2 (en) 2005-12-09 2015-01-27 Tego Inc. Methods and systems of a radio frequency network node RFID tag with hardened memory system
US8988223B2 (en) 2005-12-09 2015-03-24 Tego Inc. RFID drive management facility
US9117128B2 (en) 2005-12-09 2015-08-25 Tego, Inc. External access to memory on an RFID tag
US9361568B2 (en) 2005-12-09 2016-06-07 Tego, Inc. Radio frequency identification tag with hardened memory system
US9418263B2 (en) 2005-12-09 2016-08-16 Tego, Inc. Operating systems for an RFID tag
US9430732B2 (en) 2014-05-08 2016-08-30 Tego, Inc. Three-dimension RFID tag with opening through structure
US9542577B2 (en) 2005-12-09 2017-01-10 Tego, Inc. Information RFID tagging facilities
US9953193B2 (en) 2014-09-30 2018-04-24 Tego, Inc. Operating systems for an RFID tag

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008530936A (en) * 2005-02-17 2008-08-07 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ Device and method of operating a device
US9424447B2 (en) 2005-12-09 2016-08-23 Tego, Inc. RFID tag facility with access to a sensor
US8558699B2 (en) 2005-12-09 2013-10-15 Tego Inc. Multiple radio frequency network node RFID tag
US9465559B2 (en) 2005-12-09 2016-10-11 Tego, Inc. System and method for emulating many time programmable memory
US9471821B2 (en) 2005-12-09 2016-10-18 Tego, Inc. External access to memory on an RFID tag
US8947233B2 (en) 2005-12-09 2015-02-03 Tego Inc. Methods and systems of a multiple radio frequency network node RFID tag
US8988223B2 (en) 2005-12-09 2015-03-24 Tego Inc. RFID drive management facility
US9117128B2 (en) 2005-12-09 2015-08-25 Tego, Inc. External access to memory on an RFID tag
US9361568B2 (en) 2005-12-09 2016-06-07 Tego, Inc. Radio frequency identification tag with hardened memory system
US9390362B2 (en) 2005-12-09 2016-07-12 Tego, Inc. Radio frequency identification tag with emulated multiple-time programmable memory
US9405950B2 (en) 2005-12-09 2016-08-02 Tego, Inc. External access to memory on an RFID tag
US9418263B2 (en) 2005-12-09 2016-08-16 Tego, Inc. Operating systems for an RFID tag
US10691992B2 (en) 2005-12-09 2020-06-23 Tego, Inc. RF tag with memory management
US10430702B2 (en) 2005-12-09 2019-10-01 Tego, Inc. RF tag network connectivity through gateway facility
US9858452B2 (en) 2005-12-09 2018-01-02 Tego, Inc. Information RFID tagging facilities
US8941470B2 (en) 2005-12-09 2015-01-27 Tego Inc. Methods and systems of a radio frequency network node RFID tag with hardened memory system
US9542577B2 (en) 2005-12-09 2017-01-10 Tego, Inc. Information RFID tagging facilities
US9594998B2 (en) 2005-12-09 2017-03-14 Tego, Inc. Radio frequency identification tag with hardened memory system
US9710682B2 (en) 2005-12-09 2017-07-18 Tego, Inc. Operating systems for an RFID tag
US9842290B2 (en) 2005-12-09 2017-12-12 Tego, Inc. Flight-cycle sensor monitoring of aviation component
JP2008059012A (en) * 2006-08-29 2008-03-13 Hitachi Ltd Wireless ic memory, access device for wireless ic memory and access control method
JP2011516933A (en) * 2007-10-28 2011-05-26 テゴ,インコーポレイテッド Method and system for sharing power in a multiple radio frequency network node RFID tag
US9430732B2 (en) 2014-05-08 2016-08-30 Tego, Inc. Three-dimension RFID tag with opening through structure
US9953193B2 (en) 2014-09-30 2018-04-24 Tego, Inc. Operating systems for an RFID tag
US10204244B2 (en) 2014-09-30 2019-02-12 Tego, Inc. Data aggregating radio frequency tag
US10891449B2 (en) 2014-09-30 2021-01-12 Tego, Inc. Self-monitoring wireless computing device
US10445536B2 (en) 2014-09-30 2019-10-15 Tego, Inc. Operating system for an RF tag

Also Published As

Publication number Publication date
JP4001511B2 (en) 2007-10-31

Similar Documents

Publication Publication Date Title
EP1764703B1 (en) A system for providing access to multiple data buffers of a data retaining and processing device
JP3497834B2 (en) Route repeater, USB communication system, USB communication control method
JP4799417B2 (en) Host controller
US6427198B1 (en) Method, system, and program for determining system configuration
JP5209461B2 (en) Data transfer between devices in an integrated circuit
JPWO2004077306A1 (en) SDIO controller
CN105468548B (en) Communication of serial peripheral interface
JPH09179812A (en) Information processing system and its control method
JP4001511B2 (en) IC card and control method thereof
CN108304334B (en) Application processor and integrated circuit including interrupt controller
EP2704021B1 (en) SRAM handshake
JPH11126182A (en) Device and method for communications between computer buses
JP2005529430A (en) Bus system, station for use in the bus system, and bus interface
US11409679B2 (en) System component and use of a system component
KR20110134465A (en) Data transmission system and data read method thereof
JP3655597B2 (en) Electronic device, electronic card, and card identification method
JP2003308288A (en) Microcomputer system
US20050138236A1 (en) Direct memory access control device and method for automatically updating data transmisson size from peripheral
CN100517377C (en) Multifunctional IC card and control method thereof
JPWO2006006388A1 (en) Host device, storage device, and access method to storage device
JP4793798B2 (en) Microcomputer
JP2009123141A (en) I/o device, host controller, and computer system
KR20080109591A (en) Electric apparatus and data sending/receiving method thereof and slave apparatus and communication method between the plural number of apparatuses
CN101676894B (en) PCI virtualization device and method for non-PCI on-chip bus oriented to centralized address decoding
JP2002149623A (en) Microcomputer

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20050524

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050610

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20061129

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070619

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20070717

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20070814

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100824

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4001511

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110824

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120824

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130824

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term