(57)【要約】【課題】セキュアトークンの処理期間を示すビジー信号やライトエラー信号をデータ端子上に出力可能とし、ホスト及びメモリカードのＣＰＵの負担を軽減するとともに、これらの消費電力を低減することが可能なメモリカードを提供する。【解決手段】  制御部７は、不揮発性メモリ２を制御する。複数のデータ端子ＤＡＴ０〜３、及びコマンド端子ＣＭＤは、ホスト１０に接続され、ホストとデータ、及びコマンドを授受する。バッファメモリは、データを一次的に記憶する。制御部７は、転送ブロック数が定義されたブロックライトコマンドオペレーションによるバッファメモリのフル状態を、ライトビジー期間を示すライトビジー信号として複数のデータ端子の第１のデータ端子に出力し、ブロックライトコマンドにより発行されたトークンを受け、ライトビジー期間を示すライトビジー信号をトークン処理の終了時まで第１のデータ端子に出力する。【選択図】      図４
2009086988.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性メモリと、
前記不揮発性メモリを制御する制御部と、
ホストに接続され、ホストとデータ、及びコマンドを授受する複数のデータ端子、コマンド端子と、
前記データを一次的に記憶するバッファメモリとを具備し、
前記制御部は、
転送ブロック数が定義されたブロックライトコマンドオペレーションによる前記バッファメモリのフル状態を、ライトビジー期間を示すライトビジー信号として前記複数のデータ端子の第１のデータ端子に出力し、
前記ブロックライトコマンドにより発行されたトークンを受け、前記ライトビジー期間を示すライトビジー信号をトークン処理の終了時まで前記第１のデータ端子に出力することを特徴とするメモリカード。
【請求項２】
不揮発性メモリと、
前記不揮発性メモリを制御する制御部と、
ホストに接続され、ホストとデータ、及びコマンドを授受する複数のデータ端子、コマンド端子と、
前記データを一次的に記憶するバッファメモリとを具備し、
前記制御部は、
転送ブロック数が定義されたブロックライトコマンドオペレーションによる前記バッファメモリのフル状態を、ライトビジー期間を示すライトビジー信号として前記複数のデータ端子うち第１のデータ線に出力し、
前記ブロックライトコマンドにより発行されたトークンを受け、前記トークン処理期間を示すビジー信号を前記複数のデータ端子のうち第２のデータ端子に出力することを特徴とするメモリカード。
【請求項３】
不揮発性メモリと、
前記不揮発性メモリを制御する制御部と、
ホストに接続され、ホストとデータ、及びコマンドを授受する複数のデータ端子、コマンド端子と、
前記データを一次的に記憶するバッファメモリとを具備し、
前記制御部は、
転送ブロック数が定義されたブロックライトコマンドオペレーションによる前記バッファメモリのフル状態を、ライトビジー期間を示すライトビジー信号として前記複数のデータ端子のうち第１のデータ端子に出力し、
前記ブロックライトコマンドにより発行されたトークンを受け、前記ライトビジー期間を示すライトビジー信号をトークン処理の終了時まで前記第１のデータ端子に出力し、前記トークン処理期間を示すビジー信号を前記複数のデータ端子のうち第２のデータ端子に出力することを特徴とするメモリカード。
【請求項４】
不揮発性メモリと、
前記不揮発性メモリを制御する制御部と、
ホストに接続され、ホストとデータ、及びコマンドを授受する複数のデータ端子、コマンド端子と、
前記データを一次的に記憶するバッファメモリとを具備し、
前記制御部は、
転送ブロック数が定義されていないブロックライトコマンドオペレーションにおいて、ストップコマンド後にライトエラーステータスを示すライトエラー信号として前記複数のデータ端子のうち第１のデータ端子へ出力することを特徴とするメモリカード。
【請求項５】
前記制御部は、データの出力能力を切り替えるデータを保持するレジスタを有し、このレジスタがイネーブルを示すデータを保持している場合、前記第２のデータ端子に信号を出力することを特徴とする請求項３又は４記載のメモリカード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えばＮＡＮＤ型フラッシュメモリのような不揮発性メモリを有するメモリカードに係り、特にホストとのインタフェースに関する。
【背景技術】
【０００２】
例えばＳＤＴＭメモリカードのコマンドは、コマンドモードをスイッチして未定義のコマンドコードに新たなコマンドを拡張して定義できる。例えばこの拡張されたコマンドモードとして、Mobile Commerce Extension規格にセキュアトークンを運ぶリード／ライトコマンドが定義されている。
【０００３】
拡張定義されたコマンドとしてのブロックライトオペレーションコマンド（ＣＭＤ３５）において、ＳＤメモリカードはバッファメモリが満杯となったことを示すフル状態をビジー信号としてホストとの間に接続された信号線（以下、インタフェース信号線と称す）上に出力できる。しかし、拡張コマンドにより運ばれたセキュアトークンの認証処理期間を示すビジー信号は、インタフェース信号線上に出力することができない。したがって、ホストはセキュアトークンの処理終了を知るため、セキュアトークンのステータスリード（ＣＭＤ３６）を繰り返す必要がある。
【０００４】
また、転送ブロック数を引数(argument)に定義していないブロックライトオペレーション（ＣＭＤ２５）は、ブロックの転送終了時に、ストップコマンド（ＣＭＤ１２）を発行し、ライトオペレーションを停止する。ホストは、バッファメモリがフル状態であるビジー期間に、ストップコマンドを発行することができる。また、ＳＤメモリカードは、ストップコマンドの後に、ＮＡＮＤ型フラッシュメモリ（以下、ＮＡＮＤメモリと称す）に対するライト処理期間を示すビジー信号を、バッファメモリがフル状態であるビジー信号に続けてインタフェース信号線上に出力できる。しかしながら、ＳＤメモリカードは、ＮＡＮＤメモリへのライト処理においてエラーが発生した場合、エラーステータスを示すライトエラー信号をインタフェース信号線上に出力することができない。したがって、ホストはデータが正常にＮＡＮＤメモリへ書き込まれたかどうかを知るため、ブロックライトオペレーションのステータスリード（ＣＭＤ１３）を発行しなければならない。
【０００５】
このように、現状のＳＤメモリカード規格（例えば非特許文献１参照）において、セキュアトークンの処理期間を示すビジー信号をインタフェース信号線上に出力することができないため、以下のような問題が生じている。
【０００６】
セキュアトークンは、相互認証処理におけるチャレンジとレスポンスを繰り返すため、その署名検証、署名生成処理等に非常に長い時間のビジー待ちが発生する場合が多い。上記ステータスリードは、ホストＣＰＵにおいて、ソフトウェアのループになる。このため、ポーリングによるＣＰＵの負荷が増大するとともに、消費電力が増加する。
【０００７】
また、ＳＤメモリカードにおいて、インタフェース部のＩ／Ｏバッファトランジスタが長時間動作するため、消費電力が増大する。
【０００８】
さらに、現状のＳＤメモリカード規格において、転送ブロック数を引数に定義していないブロックライトオペレーションにおいて、ＮＡＮＤメモリへのライト処理結果としてライトエラー信号をインタフェース信号線上に出力することができない。このため、ホストは、ＮＡＮＤメモリに対するマルチブロックデータライトオペレーションの度にライト結果のステータスリードオペレーションを行わなければならない。したがって、データライトのスループットが低下し、ホストのＣＰＵの負荷が増大する一因となっている。
【非特許文献１】SD Specifications Part 1, Physical Layer Simplified Specification Version 2.0, September 25, 2006, SD Group (Matsushita Electric Industrial Co., Ltd. (Panasonic), SanDisk Corporation, Toshiba Corporation) Technical Committee SD Card Association.
【発明の開示】
【発明が解決しようとする課題】
【０００９】
本発明は、セキュアトークンの処理期間を示すビジー信号やライトエラー信号をデータ端子上に出力可能とし、ホストＣＰＵの負担を軽減するとともに、ホスト及びメモリカードの消費電力を低減することが可能なメモリカードを提供しようとするものである。
【課題を解決するための手段】
【００１０】
本発明のメモリカードの第１の態様は、不揮発性メモリと、前記不揮発性メモリを制御する制御部と、ホストに接続され、ホストとデータ、及びコマンドを授受する複数のデータ端子、コマンド端子と、前記データを一次的に記憶するバッファメモリとを具備し、前記制御部は、転送ブロック数が定義されたブロックライトコマンドオペレーションによる前記バッファメモリのフル状態を、ライトビジー期間を示すライトビジー信号として前記複数のデータ端子の第１のデータ端子に出力し、前記ブロックライトコマンドにより発行されたトークンを受け、前記ライトビジー期間を示すライトビジー信号をトークン処理の終了時まで前記第１のデータ端子に出力することを特徴とする。
【００１１】
本発明のメモリカードの第２の態様は、不揮発性メモリと、前記不揮発性メモリを制御する制御部と、ホストに接続され、ホストとデータ、及びコマンドを授受する複数のデータ端子、コマンド端子と、前記データを一次的に記憶するバッファメモリとを具備し、前記制御部は、転送ブロック数が定義されたブロックライトコマンドオペレーションによる前記バッファメモリのフル状態を、ライトビジー期間を示すライトビジー信号として前記複数のデータ端子うち第１のデータ線に出力し、前記ブロックライトコマンドにより発行されたトークンを受け、前記トークン処理期間を示すビジー信号を前記複数のデータ端子のうち第２のデータ端子に出力することを特徴とする。
【００１２】
本発明のメモリカードの第３の態様は、不揮発性メモリと、前記不揮発性メモリを制御する制御部と、ホストに接続され、ホストとデータ、及びコマンドを授受する複数のデータ端子、コマンド端子と、前記データを一次的に記憶するバッファメモリとを具備し、前記制御部は、転送ブロック数が定義されたブロックライトコマンドオペレーションによる前記バッファメモリのフル状態を、ライトビジー期間を示すライトビジー信号として前記複数のデータ端子のうち第１のデータ端子に出力し、前記ブロックライトコマンドにより発行されたトークンを受け、前記ライトビジー期間を示すライトビジー信号をトークン処理の終了時まで前記第１のデータ端子に出力し、前記トークン処理期間を示すビジー信号を前記複数のデータ端子のうち第２のデータ端子に出力することを特徴とする。
【００１３】
本発明のメモリカードの第４の態様は、不揮発性メモリと、前記不揮発性メモリを制御する制御部と、ホストに接続され、ホストとデータ、及びコマンドを授受する複数のデータ端子、コマンド端子と、前記データを一次的に記憶するバッファメモリとを具備し、前記制御部は、転送ブロック数が定義されていないブロックライトコマンドオペレーションにおいて、ストップコマンド後にライトエラーステータスを示すライトエラー信号として前記複数のデータ端子のうち第１のデータ端子へ出力することを特徴とする。
【発明の効果】
【００１４】
本発明によれば、セキュアトークンの処理期間を示すビジー信号やライトエラー信号をデータ端子上に出力可能とし、ホストＣＰＵの負担を軽減するとともに、ホスト及びメモリカードの消費電力を低減することが可能なメモリカードを提供できる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施の形態について、図面を参照して説明する。
【００１６】
図１は、ホストとメモリカードのインタフェース接続を模式的に示している。
【００１７】
ＳＤメモリカード１と、ホストデバイス（以下、ホストと称す）１０は、複数のインタフェース信号線１１により接続されている。インタフェース信号線１１は、４本のデータ信号線ＤＡＴ０、ＤＡＴ１、ＤＡＴ２、ＤＡＴ３、コマンド信号線ＣＭＤ及びクロック信号線ＣＬＫにより構成されている。データ信号線ＤＡＴ０、ＤＡＴ１、ＤＡＴ２、ＤＡＴ３、及びコマンド信号線ＣＭＤは双方向であり、ハイ・インピーダンス状態がある。このため、データ信号線ＤＡＴ０、ＤＡＴ１、ＤＡＴ２、ＤＡＴ３とコマンド信号線ＣＭＤは複数のプルアップ抵抗１２により電源に接続されている。
【００１８】
尚、ＳＤメモリカード１はホスト１０に接続端子を介して接続されている。即ち、データ信号線ＤＡＴ０、ＤＡＴ１、ＤＡＴ２、ＤＡＴ３、コマンド信号線ＣＭＤ、及びクロック信号線ＣＬＫは、それぞれＳＤメモリカード及びホストのデータ端子、コマンド端子、クロック端子に接続されている。
【００１９】
ホスト１０は、ＳＤメモリカード１をアクセスするためのハードウェア及びソフトウェア（システム）を備えている。このホスト１０は、ＳＤメモリカード１に対して、データリード、データライト、データ消去等のアクセスを行う。
【００２０】
ＳＤメモリカード１は、ホスト１０に接続されたとき、電源が供給されて動作し、ホスト１０からのアクセスに応じた処理を行う。例えばデータリード、データライト、データ消去等のアクセスでは、物理アドレスと論理アドレスのマッピング、ＥＣＣエラー訂正、ＮＡＮＤメモリへのアクセス、といった処理を行う。
【００２１】
図２は、各実施形態が適用されるＳＤメモリカード１の一例を示している。このＳＤメモリカード１は、ＮＡＮＤメモリ（ＮＡＮＤ型フラッシュメモリ）２及びコントローラ３を有している。コントローラ３は、メモリインタフェース部４、ホストインタフェース部５、バッファメモリ６、ＣＰＵ７、ＲＯＭ（Read Only Memory）８、及びＲＡＭ（Random Access Memory）９を有している。
【００２２】
メモリインタフェース部４は、コントローラ３とＮＡＮＤメモリ２との間のインタフェース処理を行う。ホストインタフェース部５は、コントローラ３とホスト１０との間のインタフェース処理を行う。
【００２３】
バッファメモリ６は、ホスト１０から送られてくるデータをＮＡＮＤメモリ２へ書き込む際、一定量（例えば１ページ分）のデータを一時的に記憶したり、ＮＡＮＤメモリ２から読み出されるデータをホスト１０へ送り出す際に、一定量のデータを一時的に記憶したりする。
【００２４】
ＣＰＵ７は、メモリカード１全体の動作を司るものである。このＣＰＵ７は、例えばＳＤメモリカード１に電源が供給された場合、ＲＯＭ８に格納されているファームウェア(制御プログラム)に従って処理を開始する。即ち、ＣＰＵ７は、処理に必要な各種テーブル（管理データ）をＲＡＭ９上に作成したり、ホスト１０からのライトコマンド、リードコマンド、消去コマンドを受けてＮＡＮＤメモリ２上の該当領域をアクセスしたり、ＮＡＮＤメモリ２をアクセスするにあたってホストからの論理アドレスと物理アドレスとを変換したり、バッファメモリ６を通じてデータ転送処理を制御したりする。
【００２５】
ＲＯＭ８は、ＣＰＵ７により使用される制御プログラムなどを格納するメモリである。ＲＡＭ９は、ＣＰＵ７の作業エリアとして使用され、各種のテーブル等を記憶する揮発性メモリである。
【００２６】
図３は、本発明のＡＰＤＵ転送タイミングを示す図である。
【００２７】
Mobile Commerce Extension規格で使用するセキュアトークンは、ＩＳＯ／ＩＥＣ７８１６で定義されたＡＰＤＵ（Application Protocol Data Unit）２５でカプセル化される。ＡＰＤＵのヘッダにはＳＴＬ（Secure Token Length）フィールドがあり、このＳＴＬフィールドによりＡＰＤＵ２５の長さを示している。
【００２８】
ＡＰＤＵ２５は、拡張定義されたマルチブロックライトコマンド（ＣＭＤ３５）２１のデータブロック２３でホスト１０から転送される。このマルチブロックライトコマンド２１に対して、ＳＤメモリカード１は、レスポンス２２を返し、バッファメモリ６のビジー状態を示すビジー信号２４を出力する。
【００２９】
ＡＰＤＵ処理期間２６は、ＳＤメモリカード１がセキュアトークンの認証処理等を実行する時間を示している。
【００３０】
各実施形態において、ＳＤメモリカード１は、ＡＰＤＵ処理期間２６を示すビジー信号３８をインタフェース信号線に出力する。上記ビジー信号３８の出力機能を以下の実施形態において説明する。
【００３１】
（第１の実施形態）
図４は、第１の実施形態を示すものであり、図１、図２に示すホスト１０とＳＤメモリカード１のインタフェースをとるホストインタフェース部５の構成を示している。図４において、図１、図２と同一部分には同一符号を付す。
【００３２】
図４に示すホストインタフェース部５において、インタフェース信号線１１のうち、データ信号線ＤＡＴ０〜ＤＡＴ３は、図示せぬ複数のトランジスタにより構成された入力バッファ３１をそれぞれ介して図２に示すバッファメモリ６に接続されている。
【００３３】
ステータスレジスタ（ＳＲ）３７は、バッファメモリ６のビジー状態を示すビジー信号、及びＮＡＮＤメモリ２への書き込み（ライト）処理状態を示すライトビジー信号、ＡＰＤＵでカプセル化されたセキュアトークンの処理ステータス（ＡＰＤＵビジー信号）等を保持する。
【００３４】
ライトビジーレジスタ（ＷＢＲ）３６は、ステータスレジスタ３７に保持されたＮＡＮＤメモリ２にデータが書き込まれていることを示すライトビジー信号のコピーを保持している。
【００３５】
論理回路３４は、ライトビジーレジスタ３６の出力信号とステータスレジスタ３７から出力されるＡＰＤＵビジー信号３８の一方を選択して出力する。
【００３６】
論理回路３５は、ステータスレジスタ３７の出力信号とバッファメモリ６の出力データのうちの一方を選択して出力する。すなわち、ステータスリードの場合、ステータスレジスタ３７の出力信号が選択され、データリードの場合、バッファメモリ６の出力データが選択される。
【００３７】
論理回路３５の出力信号のうち１つは、前記論理回路３４の出力信号とともに、論理回路３３に供給される。この論理回路３３の出力信号及び論理回路３５の残りの出力信号は、例えばトライステートバッファにより構成された出力バッファ３２を介してデータ信号線ＤＡＴ０〜ＤＡＴ３のそれぞれに供給される。
【００３８】
上記構成において、ホスト１０から供給される書き込み（ライト）データは、入力バッファ３１を通ってバッファメモリ６へ書き込まれる。バッファメモリ６がフル状態になった時、あるいはストップコマンド（ＣＭＤ１２）の発行によるＮＡＮＤメモリ２へのライト処理中に、ライトビジーレジスタ３６からビジー信号が出力される。このビジー信号は、論理回路３４、３３を通って、出力バッファ３２の１つに供給され、この出力バッファ３２からインタフェース信号線１１のデータ信号線ＤＡＴ０に出力される。
【００３９】
また、第１の実施形態は、次の機能を有している。
【００４０】
ＡＰＤＵでカプセル化されたセキュアトークンの処理ステータス（ビジーステータス）はステータスレジスタ３７に保持されている。このステータスレジスタ３７から出力されるＡＰＤＵ処理期間を示すビジー信号３８及びライトビジーレジスタ３６から出力されるビジー信号は論理回路３４に供給される。この論理回路３４は、ビジー信号を延長する機能を有しており、ライトビジー信号がＡＰＤＵビジー信号３８分延長される。延長されたビジー信号は、出力バッファ３２からデータ信号線ＤＡＴ０に出力される。
【００４１】
図５は、第１の実施形態に係るＡＰＤＵビジー信号３８の出力タイミングを示している。バッファメモリ６のビジー信号２４に続けて、ＡＰＤＵ処理期間２６を示すＡＰＤＵビジー信号３８がデータ信号線ＤＡＴ０に出力される。
【００４２】
論理回路３４は、バッファメモリ６のビジー信号２４が終了とＡＰＤＵ処理期間２６を示すＡＰＤＵビジー信号３８を切れ目なく出力する。すなわち、データ信号線ＤＡＴ０のレベル３１は、バッファメモリ６のビジー信号２４の発生に応じてハイレベルからローレベルとなり、バッファメモリ６のビジー信号２４が解除された際、データ信号線ＤＡＴ０のレベルをローレベルのまま、ＡＰＤＵ処理期間２６を示すＡＰＤＵビジー信号３８に応じてローレベルとする必要がある。すなわち、図５に示すように、データ信号線ＤＡＴ０のレベルが、バッファメモリ６のビジー信号２４が解除された際、破線で示すように、一時的にハイレベルとならないようにする必要がある。このため、論理回路３４は、例えばセットリセット型ラッチ回路を含んでいる。このラッチ回路はバッファメモリ６のビジー信号２４の発生に応じてセットされ、ＡＰＤＵ処理期間２６を示すＡＰＤＵビジー信号３８の終了に応じてリセットされる。
【００４３】
尚、この論理回路３４の実装は、これに限定されるものではなく、例えばＣＰＵ７によって、入力が選択的に切り替えられるセレクタ回路によっても構成できる。また、論理回路３３，３５も論理回路３４と同様に、例えばセレクタ回路によって構成できる。
【００４４】
上記第１の実施形態によれば、拡張定義したブロックライトコマンドによりＡＰＤＵでカプセル化したセキュアトークンの発行に対して、バッファメモリ６がフル状態であることを示すビジー信号２４を、ＡＰＤＵ処理期間を示すビジー信号３８の終了まで延長し、この延長されたビジー信号をデータ信号線ＤＡＴ０に出力している。このため、ホスト１０は、従来のように、ＡＰＤＵ処理期間中、ステータスリードのためのポーリングを行う必要がなく、ＡＰＤＵ処理期間が終了したとき、すなわち、ビジー信号３８の非アクティブに応じて通常の割込み処理を行うだけで済む。したがって、ステータスリードのためのポーリングによるＣＰＵの負荷増大を抑制することができ、消費電力を低減できる。
【００４５】
また、ポーリングの必要がないため、ＳＤメモリカード１において、ホストインタフェース部５の入力バッファや、出力バッファのポーリング期間分の消費電力の削減することができる。
【００４６】
さらに、従来の機能を有するホストのファームウェアに対しても、ポーリングを繰り返す必要がなく、ＡＰＤＵ処理期間が終了した際、１回ポーリングを行うだけでよい。このため、従来の機能を有するホストにおいても、上記と同等の効果を得ることができる。
【００４７】
（第２の実施形態）
図６は、第２の実施形態に係るＳＤメモリカードのホストインタフェース部５の構成を示している。図６において、図４と同一部分には同一符号を付す。
【００４８】
第１の実施形態は、拡張定義したブロックライトコマンドによりＡＰＤＵでカプセル化したセキュアトークンの発行に対して、バッファメモリ６がフル状態であることを示すビジー信号２４を、ＡＰＤＵ処理期間を示すビジー信号３８の終了まで延長し、この延長されたビジー信号をデータ信号線ＤＡＴ０に出力した。
【００４９】
これに対して、第２の実施形態は、バッファメモリ６がフル状態であることを示すビジー信号２４をデータ信号線ＤＡＴ０に出力し、ＡＰＤＵ処理期間を示すビジー信号３８、あるいは通常のブロックライトオペレーションにおいて、強制的に書き込みをストップさせたときのライトエラーステータスとしての例えばエラー信号をデータ信号線ＤＡＴ０以外の例えばデータ信号線ＤＡＴ１に出力するものである。
【００５０】
また、第２の実施形態において、データ信号線ＤＡＴ１にビジー信号３８やエラー信号を出力する機能は、ホスト１０により、使用又は不使用が設定可能とされている。
【００５１】
図６において、ステータスレジスタ３７に保持されたＡＰＤＵビジー信号３８及びＮＡＮＤメモリ２のライトエラーステータスとしてのライトエラー信号４１は、論理回路４２に供給される。ビジーエラー出力能力レジスタ（ＢＥＯＲ）４３は、ＡＰＤＵビジー信号とライトエラー信号をデータ信号線ＤＡＴ１に出力するか、しないかを設定するデータを保持している。このビジーエラー出力能力レジスタ４３は、例えば図示せぬＳＤカードコンフィグレーションレジスタ（ＳＣＲ）にマッピングされている。
【００５２】
このビジーエラー出力能力レジスタ４３のリセット後、又はＳＤメモリカード初期化後の値は、ディスエーブルとされている。また、ビジーエラー出力能力レジスタ（ＢＥＯＲ）４３をイネーブルとする場合、ＳＤメモリカードのイニシャライズ時に、例えばレジスタライトコマンドを用いてビジーエラー出力能力レジスタ（ＢＥＯＲ）４３に所定のデータが書き込まれる。
【００５３】
ステータスレジスタ３７に保持されたＡＰＤＵビジー信号３８及びライトエラー信号４１は、論理回路４２に供給される。論理回路４２はＡＰＤＵビジー信号３８とライトエラー信号４１の一方を選択する。論理回路４２の出力信号とビジーエラー出力能力レジスタ４３から出力されるビジーエラー出力イネーブル信号は、論理回路４４に供給される。この論理回路４４は、ビジーエラー出力イネーブル信号が真の時、論理回路４２の出力信号を出力するゲート回路である。この論理回路４４の出力信号は、前記論理回路３５から出力されるデータ信号の１つとともに論理回路４５に供給される。この論理回路４５は、論理回路４４の出力信号と論理回路３５から出力される１つのデータ信号の一方を選択する。この論理回路４５の出力端は、出力バッファ３２を介してデータ信号線ＤＡＴ１に接続されている。これら論理回路４２，４４，４５は、例えばセレクタ回路によって構成できる。
【００５４】
尚、ビジーエラー出力能力レジスタ４３は、ＡＰＤＵビジー出力能力ビットとライトエラー出力能力ビットを独立にする実装形態もある。この場合は（図示していないが）、ＡＰＤＵビジー出力能力ビット出力はＡＰＤＵビジー信号３８をゲート（論理回路４４に相当）し、ライトエラー出力能力ビット出力はライトエラー信号４１をゲート（論理回路４４に相当）することになる。これらの出力は論理回路４２の入力となり、どちらか一方が選択され、論理回路４２の出力は論理回路４５の入力となる。
【００５５】
次に、図７に示すタイミング図を参照して第２の実施形態の動作について説明する。
【００５６】
第１の実施形態と同様に、ホスト１０からのライトデータは、入力バッファ３１を通ってバッファメモリ６へ書き込まれる。バッファメモリ６がフル状態となった時、あるいはストップコマンド（ＣＭＤ１２）の発行によるＮＡＮＤメモリ２へのライト処理中に、ライトビジーレジスタ３６からビジー信号２４が出力される。このビジー信号２４は、論理回路３３、及び出力バッファ３２を通ってデータ信号線ＤＡＴ０に供給される。
【００５７】
なお、ライトビジーレジスタ３６は、ステータスレジスタ３７内に保持されたバッファメモリ６のビジーステータスを示すビジー信号及びＮＡＮＤメモリ２へのライト処理ビジーステータスを示すビジー信号がコピーされている。
【００５８】
また、図示せぬステータスリードコマンド（ＣＭＤ３６，ＣＭＤ１３）によりステータスレジスタ３７からリードされたステータスデータは、論理回路３５を通り、出力バッファ３２からデータ信号線ＤＡＴ０〜ＤＡＴ３に出力される。この際、データ信号線ＤＡＴ０から出力されるステータスデータは、論理回路４５を介して出力バッファ３２に供給される。
【００５９】
一方、ＡＰＤＵでカプセル化されたセキュアトークンの処理ステータス（ビジーステータス）はステータスレジスタ３７に保持されている。ステータスレジスタ３７からＡＰＤＵ処理期間を示すビジー信号３８が出力される。
【００６０】
また、転送ブロック数を引数に定義していないブロックライトコマンド（ＣＭＤ２５）の場合、前述したように、ブロックの転送終了時に、ストップコマンド（ＣＭＤ１２）によりライトオペレーションを停止する。ストップコマンドによるＮＡＮＤメモリ２のライト処理ステータスもステータスレジスタ３７に保持されている。このステータスレジスタ３７からライトエラー信号４１が出力される。
【００６１】
ビジーエラー出力能力レジスタ４３がオン状態（イネーブル）にセットされている場合、論理回路４４は、論理回路４２で選択されたＡＰＤＵビジー信号３８又はライトエラー信号４１を出力する。この論理回路４４の出力信号は、論理回路４５及び出力バッファ３２を通り、データ信号線ＤＡＴ１に供給される。このため、図７に示すように、データ信号線ＤＡＴ１は、ＡＰＤＵビジー信号３８が選択されている場合、ＡＰＤＵビジー信号３８に対応してローレベルとなり、ホスト１０は、データ信号線ＤＡＴ１の信号レベルからＳＤメモリカード１がＡＰＤＵ処理状態であることを知ることができる。
【００６２】
図７に示すように、第２の実施形態は、データ信号線ＤＡＴ０にバッファメモリ６のビジー信号２４が出力され、これに続いて、データ信号線ＤＡＴ１にＡＰＤＵ処理期間２６を示すビジー信号３０が出力される。すなわち、バッファメモリ６のビジー信号２４は、第１の実施形態と同様にデータ信号線ＤＡＴ０に出力されるのに対して、ＡＰＤＵ処理期間２６を示すビジー信号３０は、データ信号線ＤＡＴ１に出力される。
【００６３】
図８は、転送ブロック数を引数に定義していないブロックライトコマンド（ＣＭＤ２５）が発行された場合において、前述したエラーステータスの出力タイミングを示す図である。このタイミング図は、第２の実施形態及び後述する第３の実施形態に共通である。
【００６４】
図８に示すように、バッファメモリ４のビジー信号２４に続いて、ホスト１０によりストップコマンド（ＣＭＤ１２）が発行されると、ライトビジーレジスタ３６は、ＮＡＮＤメモリ２のライトビジー信号５１を出力する。このライトビジー信号５１は、論理回路３３、出力バッファ３２を通ってデータ信号線ＤＡＴ０に出力される。すなわち、バッファメモリ４のビジー信号２４に続くストップコマンド（ＣＭＤ１２）の後、ビジー信号２４がライトビジー信号５１の終了まで延長され、この間、データ信号線ＤＡＴ０がアクティブ状態（ローレベル）に保持される。
【００６５】
ＮＡＮＤメモリ２のライト処理ステータスであるライトエラー信号４１は、延長されたビジー信号が非アクティブ（ローレベルからハイレベル）になる前に出力される。このライトエラー信号４１の出力タイミングは、延長されたビジー信号がローレベルからハイレベルとなる例えば２クロック前に出力される。このように設定することにより、ホストは、延長されたビジー信号の立ち上がり（ローレベルからハイレベル）のタイミングでライトエラー信号４１を確実に取り込むことができる。
【００６６】
ライトエラー信号４１は、論理回路４２、４４、４５、出力バッファ３２を通ってデータ信号線ＤＡＴ１に出力される。
【００６７】
なお、ストップコマンド（ＣＭＤ１２）はビジー信号２４の期間に発行され、そのレスポンス（ＲＳＰ）がＳＤメモリカード１からホスト１０に返される。
【００６８】
上記第２の実施形態によれば、バッファメモリ６のビジー信号をデータ信号線ＤＡＴ０に出力し、拡張定義したブロックライトコマンドによりＡＰＤＵでカプセル化したセキュアトークンを発行において、ＡＰＤＵビジー信号をデータ信号線ＤＡＴ０とは別のデータ信号線ＤＡＴ１に出力している。このため、ホスト１０は、セキュアトークンの処理ステータスのリードコマンド発行を繰り返す必要がなく、データ信号線ＤＡＴ１のビジー信号が非アクティブを示すハイレベルとなったとき、割込み処理を行うだけになる。したがって、ポーリングを繰り返す必要がないため、ＣＰＵの負担を軽減できるとともに、消費電力を低減できる。さらに、ホストインタフェース部５の入力バッファ３１、出力バッファ３２を構成するトランジスタの消費電力を削減することも可能である。
【００６９】
また、バッファメモリ６のビジー信号とＡＰＤＵ処理のビジー信号は独立に出力されるため、ホスト１０において、これらの割込みイベント処理を独立にプログラムできる利点がある。
【００７０】
さらに、転送ブロック数を引数に定義していないブロックライトオペレーションにおいて、バッファメモリ４のビジー信号２４に続くストップコマンド（ＣＭＤ１２）の後、ビジー信号２４がライトビジー信号５１の終了まで延長され、この間、データ信号線ＤＡＴ０がアクティブ状態（ローレベル）に保持される。また、ＮＡＮＤメモリ２のエラーステータスとしてのライトエラー信号４１は、データ信号線ＤＡＴ０が非アクティブ状態となる直前（例えば２クロック前）に、データ信号線ＤＡＴ１に出力される。このため、ホスト１０は、マルチブロックデータライトオペレーションの度に行う必要であったライト結果のステータスリードを実行することなく、ライトエラー信号４１に基づき、必要な処理を行うことができる。したがって、データライトスループットを向上することができる。しかも、ホスト１０のＣＰＵの負荷を軽減し、消費電力を低減できるという優れた効果を得ることができる。
【００７１】
また、ビジーエラー出力能力レジスタ４３は、従来のホストに対してディスエーブルとされ、第２の実施形態の機能を不能にしている。したがって、従来のホストに対しては、従来通りのビジー信号を出力するため、何ら悪影響を及ぼすことがない。
【００７２】
（第３の実施形態）
図９は、第３の実施形態に係るＳＤメモリカードのホストインタフェース部５の構成を示している。図９において、図４、図６と同一部分には同一符号を付す。
【００７３】
第３の実施形態は、第１、第２の実施形態を組み合わせたものである。すなわち、図９において、ライトビジーレジスタ３６の出力信号とステータスレジスタ３７から出力されるＡＰＤＵビジー信号３８は論理回路３４に供給される。論理回路３４は、これらの一方を選択して出力する。
【００７４】
論理回路３５は、ステータスレジスタ３７の出力信号とバッファメモリ６の出力データのうちの一方を選択して出力する。論理回路３５の出力信号のうち１つは、前記論理回路３４の出力信号とともに、論理回路３３に供給される。この論理回路３３の出力信号は出力バッファ３２を介してデータ信号線ＤＡＴ０に供給される。
【００７５】
また、ステータスレジスタ３７に保持されたＡＰＤＵビジー信号３８及びライトエラー信号４１は、論理回路４２に供給される。論理回路４２はＡＰＤＵビジー信号３８とライトエラー信号４１の一方を選択する。論理回路４２の出力信号とビジーエラー出力能力レジスタ４３から出力されるビジーエラー出力イネーブル信号は、論理回路４４に供給される。この論理回路４４は、ビジーエラー出力イネーブル信号が真の時、論理回路４２の出力信号を出力するゲート回路である。この論理回路４４の出力信号は、前記論理回路３５から出力されるデータ信号の１つとともに論理回路４５に供給される。この論理回路４５は、論理回路４４の出力信号と論理回路３５から出力される１つのデータ信号の一方を選択する。この論理回路４５の出力端は、出力バッファ３２を介してデータ信号線ＤＡＴ１に接続されている。
【００７６】
次に、第３の実施形態の動作について説明する。
【００７７】
ホスト１０から供給されるライトデータは、入力バッファ３１を通ってバッファメモリ６に書き込まれる。バッファメモリ６がフル状態になった時と、ストップコマンド（ＣＭＤ１２）の発行によるＮＡＮＤメモリ２へのライト処理中に、ライトビジーレジスタ３６からビジー信号が出力される。このビジー信号はリードデータとビジー信号を選択する論理回路３３、及び出力バッファ３２を通り、データ信号線ＤＡＴ０に出力される。
【００７８】
ステータスリードコマンド（ＣＭＤ３６，ＣＭＤ１３）によりステータスレジスタ３７からリードされるステータスデータは、論理回路３５を通り、出力バッファト３２からデータ信号線ＤＡＴ０〜ＤＡＴ３に供給される。
【００７９】
一方、ＡＰＤＵでカプセル化されたセキュアトークンの処理ステータス（ビジーステータス）はステータスレジスタ３７に保持されている。このステータスレジスタ３７からＡＰＤＵビジー信号３８が出力される。
【００８０】
ＡＰＤＵビジー信号３８出力とライトビジーレジスタ３６から出力されるビジー信号は、論理回路３４に供給される。この論理回路３４は、前述したように、ビジー出力延長回路を有し、ライトビジー信号がＡＰＤＵビジー信号３８分延長する。すなわち、論理回路３４は、ライトビジー信号がアクティブ状態から非アクティブ状態となり、ＡＰＤＵビジー信号３８が非アクティブ状態からアクティブ状態となる際、論理回路３４の出力信号を連続してローレベルに保持する。
【００８１】
このように、論理回路３４により延長されたビジー信号は、出力バッファト３２からデータ信号線ＤＡＴ０に出力される。
【００８２】
なお、第３の実施形態は、以下に記すようにＡＰＤＵビジー信号を、データ信号線ＤＡＴ１にも出力することができる。
【００８３】
また、転送ブロック数を引数に定義していないブロックライトコマンド（ＣＭＤ２５）の場合、前述したように、ブロックの転送終了時に、ストップコマンド（ＣＭＤ１２）によりライトオペレーションを停止する。ストップコマンド（ＣＭＤ１２）によるＮＡＮＤメモリ２のライト処理ステータスもステータスレジスタ３７に保持されている。このステータスレジスタ３７からライトエラー信号４１が出力される。
【００８４】
ビジーエラー出力能力レジスタ４３がオン状態（イネーブル）にセットされている場合、論理回路４４は、論理回路４２で選択されたＡＰＤＵビジー信号３８又はライトエラー信号４１を出力する。この論理回路４２の出力信号は、論理回路４５及び出力バッファ３２を通り、データ信号線ＤＡＴ１信号線に供給される。
【００８５】
図１０は、第３の実施形態に係るＡＰＤＵビジー割込み信号の出力タイミングを示す図である。
【００８６】
図１０に示すように、バッファメモリ６のビジー信号２４に続けて、ＡＰＤＵ処理期間２６を示すビジー信号３８がデータ信号線ＤＡＴ０に出力され、且つＡＰＤＵ処理期間２６を示すビジー信号３８がデータ信号線ＤＡＴ１にも出力される。すなわち、データ信号線ＤＡＴ０に、バッファメモリ６のビジー信号２４にＡＰＤＵ処理期間２６分を延長したビジー信号３１が出力される。また、ＡＰＤＵ処理期間２６を示すビジー信号３８が、データ信号線ＤＡＴ１に出力される。
【００８７】
エラーステータスとしてのライトエラー信号の出力は、図８を用いて説明した通りである。
【００８８】
上記第３の実施形態によれば、第１、第２の実施形態と同様の効果を得ることができる。
【００８９】
しかも、第３の実施形態によれば、比較的小規模な回路構成により、高機能のＳＤメモリカードを実現することができる。
【００９０】
本発明は、上記各実施形態に限定されるものではなく、発明の要旨を変えない範囲において種々変形実施可能なことは勿論である。
【図面の簡単な説明】
【００９１】
【図１】ホストとメモリカードのインタフェース接続を模式的に示す構成図。
【図２】各実施形態が適用されるＳＤメモリカード１の一例を示す構成図。
【図３】本発明のＡＰＤＵ転送タイミングを示す図。
【図４】第１の実施形態を示す構成図。
【図５】第１の実施形態の動作を示すタイミング図。
【図６】第２の実施形態を示す構成図。
【図７】第２の実施形態の動作を示すタイミング図。
【図８】第２、第３の実施形態の動作を示すタイミング図。
【図９】第３の実施形態を示す構成図。
【図１０】第３の実施形態の動作を示すタイミング図。
【符号の説明】
【００９２】
１…ＳＤメモリカード、２…ＮＡＮＤメモリ、３…コントローラ、５…ホストインタフェース部、６…バッファメモリ、７…ＣＰＵ、１０…ホスト、ＤＡＴ０〜ＤＡＴ３…データ信号線、３６…ライトビジーレジスタ、３７…ステータスレジスタ、３３、３４、３５、４２、４４、４５…論理回路。
【図１】
2009086988.tif 000003
【図２】
2009086988.tif 000004
【図３】
2009086988.tif 000005
【図４】
2009086988.tif 000006
【図５】
2009086988.tif 000007
【図６】
2009086988.tif 000008
【図７】
2009086988.tif 000009
【図８】
2009086988.tif 000010
【図９】
2009086988.tif 000011
【図１０】
2009086988.tif 000012