(57)【要約】【課題】エラーが発生したかどうかを確認するためのコマンドを発行することなく、メモリカードにおけるエラーの発生をホスト機器へ通知でき、メモリカードの制御方法の簡素化及び制御効率の向上を図る。【解決手段】ホストインタフェース部１３は、ホスト機器２との間でコマンドの受信とデコード及びレスポンスの送信及びデータの送受信を行う。リード／ライト制御部２０は、コマンドのデコード結果に従ってデータの書き込みまたは読み出しを行う。エラー検出部は、インタフェース部１３によるデータの送受信及びリード／ライト制御部２０によるデータの書き込みまたは読み出しにおいてエラーが発生したか否かを検出する。エラー検出部がエラーの発生を検出したとき、インタフェース部１３は、インタフェース部１３がデータの送受信を行っていない期間にホスト機器２へ割り込み信号を出力する。【選択図】      図７
2006139556.tif 000002
【特許請求の範囲】
【請求項１】
割り込みを検出可能なホスト機器に装着して使用するメモリカードに搭載されるカードコントローラにおいて、
前記ホスト機器との間でコマンドの受信とデコード及びレスポンスの送信及びデータの送受信を行うインタフェース部と、
前記コマンドのデコード結果に従ってデータの書き込み及び読み出しの少なくともいずれか一方を行うリード／ライト制御部と、
前記インタフェース部による前記データの送受信及び前記リード／ライト制御部による前記データの書き込み及び読み出しの少なくともいずれか一方においてエラーが発生したか否かを検出するエラー検出部と、
前記エラー検出部がエラーの発生を検出したとき、前記インタフェース部がデータの送受信を行っていない期間に、前記インタフェース部を介して前記ホスト機器へ割り込み信号を出力する信号処理部と、
を具備することを特徴とするカードコントローラ。
【請求項２】
割り込みを検出可能なホスト機器に装着して使用するメモリカードに搭載されるカードコントローラにおいて、
外部デバイスとの間で情報の送受信を行う通信部と、
前記ホスト機器との間でコマンドの受信とデコード及びレスポンスの送信及びデータの送受信を行うインタフェース部と、
前記コマンドのデコード結果に従ってデータの書き込み及び読み出しの少なくともいずれか一方を行うリード／ライト制御部と、
前記通信部から発生した所定情報を、前記インタフェース部がデータの送受信を行っていない期間に、前記インタフェース部を介して前記ホスト機器へ割り込み信号として出力する信号処理部と、
を具備することを特徴とするカードコントローラ。
【請求項３】
前記インタフェース部は、前記ホスト機器から所定のコマンドが入力されたとき、前記割り込み信号の出力を停止して割り込みサイクルを終了させることを特徴とする請求項１または２に記載のカードコントローラ。
【請求項４】
前記インタフェース部は、前記ホスト機器から入力される所定のコマンドにより、前記割り込み信号を出力するモードと、前記割り込み信号を出力しないモードとを切り換えることを特徴とする請求項１乃至３のいずれか１つに記載のカードコントローラ。
【請求項５】
前記所定情報は、前記通信部が通信を開始または終了したことを示す情報であることを特徴とする請求項２に記載のカードコントローラ。
【請求項６】
前記エラー検出部がエラーの発生を検出したとき、前記エラーの発生を示すエラー情報を保持するレジスタをさらに具備し、
前記割り込み信号を前記ホスト機器が受け取ったとき、前記ホスト機器が前記レジスタに保持された前記エラー情報を読み出すことにより、前記ホスト機器が前記エラーの発生を認知することを特徴とする請求項１に記載のカードコントローラ。
【請求項７】
割り込みを検出可能なホスト機器に装着され、前記ホスト機器からアクセスされるメモリカードにおいて、
前記ホスト機器との間でコマンドの受信とデコード及びレスポンスの送信及びデータの送受信を行うインタフェース部と、
前記データを記憶するメモリと、
前記コマンドのデコード結果に従って前記メモリに対して前記データの書き込み及び読み出しの少なくともいずれか一方を行うリード／ライト制御部と、
前記インタフェース部による前記データの送受信及び前記リード／ライト制御部による前記データの書き込み及び読み出しの少なくともいずれか一方においてエラーが発生したか否かを検出するエラー検出部と、
前記エラー検出部がエラーの発生を検出したとき、前記インタフェース部がデータの送受信を行っていない期間に、前記インタフェース部を介して前記ホスト機器へ割り込み信号を出力する信号処理部と、
を具備することを特徴とするメモリカード。
【請求項８】
割り込みを検出可能なホスト機器に装着され、前記ホスト機器からアクセスされるメモリカードにおいて、
外部デバイスとの間で情報の送受信を行う通信部と、
前記ホスト機器との間でコマンドの受信とデコード及びレスポンスの送信及びデータの送受信を行うインタフェース部と、
前記データを記憶するメモリと、
前記コマンドのデコード結果に従って前記メモリに対して前記データの書き込み及び読み出しの少なくともいずれか一方を行うリード／ライト制御部と、
前記通信部から発生した所定情報を、前記インタフェース部がデータの送受信を行っていない期間に、前記インタフェース部を介して前記ホスト機器へ割り込み信号として出力する信号処理部と、
を具備することを特徴とするメモリカード。
【請求項９】
前記インタフェース部は、前記ホスト機器から所定のコマンドが入力されたとき、前記割り込み信号の出力を停止して割り込みサイクルを終了させることを特徴とする請求項７または８に記載のメモリカード。
【請求項１０】
前記インタフェース部は、前記ホスト機器から入力される所定のコマンドにより、前記割り込み信号を出力するモードと、前記割り込み信号を出力しないモードとを切り換えることを特徴とする請求項７乃至９のいずれか１つに記載のメモリカード。
【請求項１１】
前記所定情報は、前記通信部が通信を開始または終了したことを示す情報であることを特徴とする請求項８に記載のメモリカード。
【請求項１２】
前記エラー検出部がエラーの発生を検出したとき、前記エラーの発生を示すエラー情報を保持するレジスタをさらに具備し、
前記割り込み信号を前記ホスト機器が受け取ったとき、前記ホスト機器が前記レジスタに保持された前記エラー情報を読み出すことにより、前記ホスト機器が前記エラーの発生を認知することを特徴とする請求項７に記載のメモリカード。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、記憶素子を有するメモリカード及びそのカードコントローラに関するものであり、例えば、ホスト機器からのアクセスによりデータの書き込み及び読み出しを行うＳＤメモリカード及びそのカードコントローラに関するものである。
【背景技術】
【０００２】
近年、パーソナルコンピュータ、ＰＤＡ、カメラ、携帯電話等の様々な携帯用電子機器においては、リムーバブル記憶デバイスの１つであるメモリカードが多く用いられている。メモリカードとしては、ＰＣカード、及び小型のＳＤカードが注目されている（例えば、特許文献１参照）。ＳＤカードは、フラッシュメモリを内蔵したメモリカードであり、特に小型化、大容量化、及び高速化の要求に見合うように設計されている。
【０００３】
ホスト機器からＳＤカードへのアクセスにおいてエラーが発生した場合、ホスト機器がエラーの発生を知るためには、書き込み及び読み出しなどのアクセスコマンド発行後、さらにホスト機器からＳＤカードへエラーが発生したかどうかを確認するためのコマンドを発行し、そのレスポンス信号によりエラーが発生したかどうかを確認する必要があった。
【０００４】
しかしながら、まれにしか発生しないエラーを確認するために、アクセスコマンド発行後、エラー確認用のコマンドを発行する必要があり、ホスト機器にとってメモリカードの制御方法の簡素化を妨げるものとなっていた。また、他に無線通信手段あるいは有線通信手段を持つメモリカードの場合、無線通信あるいは有線通信によって発生した情報をホスト機器に通知する手段が必要となるが、ホスト機器から定期的にポーリングする以外にホスト機器が無線通信あるいは有線通信によって発生した情報を知る手段がなかった。
【特許文献１】特開２００３−９１７０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
そこでこの発明は、前記事情に鑑みてなされたものであり、エラーが発生したかどうかを確認するためのコマンドを発行することなく、メモリカードにおけるエラーの発生をホスト機器へ通知でき、メモリカードの制御方法の簡素化及び制御効率の向上を図ることができるメモリカード及びそのカードコントローラを提供することを目的とする。また、無線通信あるいは有線通信によって発生した情報を、ホスト機器に通知する手段を具備するメモリカード及びそのカードコントローラを提供することを目的とする。
【課題を解決するための手段】
【０００６】
前記目的を達成するために、この発明の一実施形態のカードコントローラは、割り込みを検出可能なホスト機器に装着して使用するメモリカードに搭載されるカードコントローラにおいて、前記ホスト機器との間でコマンドの受信とデコード及びレスポンスの送信及びデータの送受信を行うインタフェース部と、前記コマンドのデコード結果に従ってデータの書き込み及び読み出しの少なくともいずれか一方を行うリード／ライト制御部と、前記インタフェース部による前記データの送受信及び前記リード／ライト制御部による前記データの書き込み及び読み出しの少なくともいずれか一方においてエラーが発生したか否かを検出するエラー検出部と、前記エラー検出部がエラーの発生を検出したとき、前記インタフェース部がデータの送受信を行っていない期間に、前記インタフェース部を介して前記ホスト機器へ割り込み信号を出力する信号処理部とを具備することを特徴とする。
【０００７】
また、この発明の他の実施形態のカードコントローラは、割り込みを検出可能なホスト機器に装着して使用するメモリカードに搭載されるカードコントローラにおいて、外部デバイスとの間で情報の送受信を行う通信部と、前記ホスト機器との間でコマンドの受信とデコード及びレスポンスの送信及びデータの送受信を行うインタフェース部と、前記コマンドのデコード結果に従ってデータの書き込み及び読み出しの少なくともいずれか一方を行うリード／ライト制御部と、前記通信部から発生した所定情報を、前記インタフェース部がデータの送受信を行っていない期間に、前記インタフェース部を介して前記ホスト機器へ割り込み信号として出力する信号処理部とを具備することを特徴とする。
【０００８】
また、この発明の一実施形態のメモリカードは、割り込みを検出可能なホスト機器に装着され、前記ホスト機器からアクセスされるメモリカードにおいて、前記ホスト機器との間でコマンドの受信とデコード及びレスポンスの送信及びデータの送受信を行うインタフェース部と、前記データを記憶するメモリと、前記コマンドのデコード結果に従って前記メモリに対して前記データの書き込み及び読み出しの少なくともいずれか一方を行うリード／ライト制御部と、前記インタフェース部による前記データの送受信及び前記リード／ライト制御部による前記データの書き込み及び読み出しの少なくともいずれか一方においてエラーが発生したか否かを検出するエラー検出部と、前記エラー検出部がエラーの発生を検出したとき、前記インタフェース部がデータの送受信を行っていない期間に、前記インタフェース部を介して前記ホスト機器へ割り込み信号を出力する信号処理部とを具備することを特徴とする。
【０００９】
また、この発明の他の実施形態のメモリカードは、割り込みを検出可能なホスト機器に装着され、前記ホスト機器からアクセスされるメモリカードにおいて、外部デバイスとの間で情報の送受信を行う通信部と、前記ホスト機器との間でコマンドの受信とデコード及びレスポンスの送信及びデータの送受信を行うインタフェース部と、前記データを記憶するメモリと、前記コマンドのデコード結果に従って前記メモリに対して前記データの書き込み及び読み出しの少なくともいずれか一方を行うリード／ライト制御部と、前記通信部から発生した所定情報を、前記インタフェース部がデータの送受信を行っていない期間に、前記インタフェース部を介して前記ホスト機器へ割り込み信号として出力する信号処理部とを具備することを特徴とする。
【発明の効果】
【００１０】
この発明によれば、エラーが発生したかどうかを確認するためのコマンドを発行することなく、メモリカードにおけるエラーの発生をホスト機器へ通知でき、メモリカードの制御方法の簡素化及び制御効率の向上を図ることができるメモリカード及びそのカードコントローラが提供できる。また、無線通信あるいは有線通信によってイベントが発生したことを、ホスト機器に通知する手段を具備するメモリカード及びそのカードコントローラが提供できる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照してこの発明の実施形態のメモリカードについて説明する。ここでは、メモリカードとして、ＳＤメモリカードを例に取る。説明に際し、全図にわたり、共通する部分には共通する参照符号を付す。
【００１２】
［第１の実施形態］
まず、この発明の第１の実施形態のＳＤメモリカードについて説明する。
【００１３】
図１は、第１の実施形態のＳＤメモリカードの構成を示す概略図である。ＳＤメモリカード１は、ホスト機器２とバスインタフェース３を介して情報の授受を行う。ＳＤメモリカード１は、ＮＡＮＤ型フラッシュメモリチップ１１、このＮＡＮＤ型フラッシュメモリチップ１１を制御するカードコントローラ１２、及び複数の信号ピン（ピン１乃至ピン９）１３を備えている。
【００１４】
これら複数の信号ピン１３は、カードコントローラ１２と電気的に接続されている。複数の信号ピン１３におけるピン１乃至ピン９に対する信号の割り当ては、例えば図２に示すようになっている。データ０乃至データ３は、ピン７、ピン８、ピン９、及びピン１にそれぞれ割り当てられている。ピン1は、またカード検出信号に対しても割り当てられている。さらに、ピン２はコマンドに割り当てられ、ピン３及びピン６は接地電位Ｖssに、ピン４は電源電圧Ｖddに、ピン５はクロック信号に割り当てられている。
【００１５】
また、ＳＤメモリカード１は、ホスト機器２に設けられたスロットに対して挿抜可能なように形成されている。ホスト機器２に設けられたホストコントローラ（図示せず）は、これらピン１乃至ピン９を介してＳＤメモリカード１内のカードコントローラ１２と各種信号及びデータを通信する。例えば、ＳＤメモリカード１にデータが書き込まれる際には、ホストコントローラは書き込みコマンドを、ピン２を介してカードコントローラ１２にシリアルな信号として送出する。このとき、カードコントローラ１２は、ピン５に供給されているクロック信号に応答して、ピン２に与えられる書き込みコマンドを取り込む。ここで、前述したように、書き込みコマンドは、ピン２のみを利用してカードコントローラ１２にシリアルに入力される。コマンドの入力に割り当てられているピン２は、図２に示すように、データ３用のピン１と接地電位Ｖss用のピン３との間に配置されている。前記複数の信号ピン１３とそれに対するインタフェース３は、ホスト機器２内のホストコントローラとＳＤメモリカード１とが通信するのに使用される。
【００１６】
これに対し、ＮＡＮＤ型フラッシュメモリ１１とカードコントローラ１２との間の通信は、ＮＡＮＤ型フラッシュメモリ用のインタフェースを採用する。したがって、ここでは図示しないが、ＮＡＮＤ型フラッシュメモリ１１とカードコントローラ１２とは８ビットの入出力（Ｉ／Ｏ）線により接続されている。例えば、カードコントローラ１２がＮＡＮＤ型フラッシュメモリ１１にデータを書き込む際には、カードコントローラ１２は、これらＩ／Ｏ線を介してデータ入力コマンド８０Ｈ、カラムアドレス、ページアドレス、データ、及びプログラムコマンド１０ＨをＮＡＮＤ型フラッシュメモリ１１に順次入力する。ここで、コマンド８０Ｈの“Ｈ”は１６進数を示すものであり、実際には“１０００００００”という８ビットの信号が、８ビットのＩ／Ｏ線にパラレルに与えられる。つまり、このＮＡＮＤ型フラッシュメモリ用のインタフェースは、複数ビットのコマンドがパラレルに与えられるものである。また、ＮＡＮＤ型フラッシュメモリ用のインタフェースでは、ＮＡＮＤ型フラッシュメモリ１１に対するコマンドとデータが同じＩ／Ｏ線を共用して通信されている。このように、ホスト機器２内のホストコントローラとＳＤメモリカード１とが通信するインタフェースと、ＮＡＮＤ型フラッシュメモリ１１とカードコントローラ１２とが通信するインタフェースとは異なるものとなっている。
【００１７】
図３は、第１の実施形態のＳＤメモリカードのハード構成を示すブロック図である。
【００１８】
ホスト機器２は、バスインタフェース３を介して接続されるＳＤメモリカード１に対しアクセスを行うためのハードウェア及びソフトウェアを備えている。ＳＤメモリカード１は、ホスト機器２に接続された時に電源供給を受けて動作し、ホスト機器２からのアクセスに応じた処理を行う。
【００１９】
ＳＤメモリカード１は、前述したように、ＮＡＮＤ型フラッシュメモリ１１及びカードコントローラ１２を含む。ＮＡＮＤ型フラッシュメモリ１１は、消去時の消去ブロックサイズ（消去単位のブロックサイズ）が所定サイズ（例えば、２５６kByte）に定められている。また、このＮＡＮＤ型フラッシュメモリ１１は、ページと称する単位（例えば、２kByte）でデータの書き込みおよび読み出しが行われるようになっている。カードコントローラ１２は、ＮＡＮＤ型フラッシュメモリ１１内部の物理状態（例えば、何処の物理ブロックアドレスに、何番目の論理セクタアドレスデータが含まれているか、あるいは、何処のブロックが消去状態であるか）を管理する。このカードコントローラ１２は、ホストインタフェースモジュール１３、ＭＰＵ（Micro processing unit）１４、フラッシュコントローラ１５、ＲＯＭ（Read-only memory）１６、ＲＡＭ（Random access memory）１７、及びバッファ１８を有している。
【００２０】
ホストインタフェースモジュール１３は、カードコントローラ１２とホスト機器２との間のインタフェース処理を行うものであり、レジスタ部１９を含む。図４に、レジスタ部１９の詳細な構成を示す。レジスタ部１９は、カードステータスレジスタ、及びＣＩＤ、ＲＣＡ、ＤＳＲ、ＣＳＤ、ＳＣＲ、ＯＣＲの各種レジスタを有する。
【００２１】
これらレジスタは、以下のように定義されている。カードステータスレジスタは、通常動作において使用され、例えば後述するエラー情報が記憶される。ＣＩＤ、ＲＣＡ、ＤＳＲ、ＣＳＤ、ＳＣＲ、及びＯＣＲは、主にＳＤメモリカードの初期化時に使用される。ＣＩＤ（Card identification number）には、ＳＤメモリカードの個体番号が記憶される。ＲＣＡ（Relative card address）には、相対カードアドレス（初期化時にホスト機器が動的に決める）が記憶される。ＤＳＲ（Driver stage register）には、ＳＤメモリカードのバス駆動力等が記憶される。ＣＳＤ（Card specific data）には、ＳＤメモリカードの特性パラメータ値が記憶される。ＳＣＲ（SD configuration data register）には、ＳＤメモリカードのデータ配置が記憶される。さらに、ＯＣＲ（Operation condition resister）には、動作範囲電圧に制限のあるＳＤメモリカードの場合の動作電圧が記憶される。
【００２２】
ＭＰＵ１４は、ＳＤメモリカード１全体の動作を制御するものである。ＭＰＵ１４は、例えばＳＤメモリカード１が電源供給を受けたときに、ＲＯＭ１６に格納されているファームウェア（制御プログラム）をＲＡＭ１７上に読み出して所定の処理を実行することにより、各種のテーブルをＲＡＭ１７上に作成する。ＭＰＵ１４は、またホスト機器２から書き込みコマンド、読み出しコマンド、消去コマンドを受け取り、ＮＡＮＤ型フラッシュメモリ１１に対して所定の処理を実行したり、バッファ１８を通じたデータ転送処理を制御したりする。
【００２３】
ＲＯＭ１６は、ＭＰＵ１４により制御される制御プログラムなどを格納するメモリである。ＲＡＭ１７は、ＭＰＵ１４の作業エリアとして使用され、制御プログラムや各種のテーブルを記憶するメモリである。さらに、フラッシュコントローラ１５は、カードコントローラ１２とＮＡＮＤ型フラッシュメモリ１１との間のインタフェース処理を行うものである。
【００２４】
バッファ１８は、ホスト機器２から送られてくるデータをＮＡＮＤ型フラッシュメモリ１１へ書き込む際に、一定量のデータ（例えば、１ページ分）を一時的に記憶したり、ＮＡＮＤ型フラッシュメモリ１１から読み出されるデータをホスト機器２へ送り出す際に、一定量のデータを一時的に記憶したりするものである。
【００２５】
図５は、ＳＤメモリカード内のＮＡＮＤ型フラッシュメモリ１１におけるデータ配置を示している。ＮＡＮＤ型フラッシュメモリ１１の各ページは、２１１２Byte（（５１２Byte分のデータ記憶部＋１０Byte分の冗長部）×４＋２４Byte分の管理データ記憶部）を有しており、１２８ページ分が１つの消去単位（２５６kByte＋８kByte（ここで、kは１０２４））となる。なお、以下の説明においては、便宜上、このＮＡＮＤ型フラッシュメモリ１１の消去単位を２５６kByteと呼ぶ。
【００２６】
また、ＮＡＮＤ型フラッシュメモリ１１は、フラッシュメモリへのデータ入出力を行うためのページバッファ１１Ａを備えている。このページバッファ１１Ａの記憶容量は、２１１２Byte（２０４８Byte＋６４Byte）である。データ書き込みなどの際には、ページバッファ１１Ａは、フラッシュメモリに対するデータ入出力処理を自身の記憶容量に相当する１ページ分の単位で実行する。
【００２７】
ＮＡＮＤ型フラッシュメモリ１１の記憶容量が例えば１Ｇビットである場合、２５６kByteブロック（消去単位）の数は、５１２個となる。
【００２８】
また、図５においては消去単位が２５６kByteブロックである場合を例示しているが、消去単位が例えば１６kByteブロックとなるように構築することも実用上有効である。この場合、各ページは５２８Byte（５１２Byte分のデータ記憶部＋１６Byte分の冗長部）を有しており、３２ページ分が１つの消去単位（１６kByte＋０．５kByte（ここで、kは１０２４））となる。
【００２９】
ＮＡＮＤ型フラッシュメモリ１１のデータが書き込まれる領域（データ記憶領域）は、図３に示すように、保存されるデータに応じて複数の領域に区分けされている。ＮＡＮＤ型フラッシュメモリ１１は、データ記憶領域として、ユーザデータを格納するユーザデータ領域３４と、主にＳＤメモリカードに関する管理情報を格納するための管理データ領域３１と、機密データを格納する機密データ領域３２と、重要なデータを格納するための保護データ領域３３とを備えている。
【００３０】
ユーザデータ領域３４は、ＳＤメモリカード１を使用するユーザが自由にアクセス及び使用することが可能な領域である。保護データ領域３３は、ＳＤメモリカード１に接続されたホスト機器２との相互認証によりホスト機器２の正当性が証明された場合にのみアクセスが可能となる領域である。
【００３１】
管理データ領域３１は、ＳＤメモリカード１のセキュリティ情報やメディアＩＤなどのカード情報が格納されている領域である。機密データ領域３２は、暗号化に用いる鍵情報や認証時に使用する機密データが保存されており、ホスト機器２からはアクセス不可能な領域である。
【００３２】
また、この第１の実施形態及び後述する第２の実施形態では、ＳＤメモリカード１の動作モードがＳＤ４ｂｉｔモードである場合を例に説明するが、ＳＤ１ｂｉｔモード、ＳＰＩモードである場合にも適用できる。図６に、ＳＤ４ｂｉｔモード、ＳＤ１ｂｉｔモード、及びＳＰＩモードにおける信号ピンに対する信号割り当てを示す。
【００３３】
ＳＤメモリカードの動作モードは、ＳＤモードとＳＰＩモードに大別される。ＳＤモードにおいては、ＳＤメモリカードはホスト機器からのバス幅変更コマンドによって、ＳＤ４ｂｉｔモードまたはＳＤ１ｂｉｔモードに設定される。
【００３４】
ここで、４つのデータ０ピン（ＤＡＴ０）乃至データ３ピン（ＤＡＴ３）に着目すると、４ビット幅単位でデータ転送を行うＳＤ４ｂｉｔモードでは、４つのデータ０ピン乃至データ３ピンが全てデータ転送に用いられるが、１ビット幅単位でデータ転送を行うＳＤ１ｂｉｔモードでは、データ０ピン（ＤＡＴ０）のみがデータ転送に使用され、データ１ピン（ＤＡＴ１）、データ２ピン（ＤＡＴ２）は全く使用されない。また、データ３ピン（ＤＡＴ３）は例えばＳＤメモリカードからホスト機器への非同期割り込み等のために使用される。ＳＰＩモードでは、データ０ピン（ＤＡＴ０）がＳＤメモリカードからホスト機器へのデータ信号線（ＤＡＴＡ  ＯＵＴ）に用いられる。コマンドピン（ＣＭＤ）はホスト機器からＳＤメモリカードへのデータ信号線（ＤＡＴＡ  ＩＮ）に用いられる。データ１ピン（ＤＡＴ１）、データ２ピン（ＤＡＴ２）は全く使用されない。また、ＳＰＩモードでは、データ３ピン（ＤＡＴ３）は、ホスト機器からＳＤメモリカードへのチップセレクト信号ＣＳの送信に用いられる。
【００３５】
次に、この発明の第１の実施形態のＳＤメモリカードの動作について説明する。
【００３６】
図７は、第１の実施形態のＳＤメモリカードの構成を示す機能ブロック図である。
【００３７】
ＳＤメモリカード１は、バスインタフェース３を介してホスト機器２からアクセスされ、書き込み及び読み出しなどの動作を行う。ＳＤメモリカード１は、ＮＡＮＤ型フラッシュメモリ１１、及びカードコントローラ１２を含む。カードコントローラ１２は、ホストインタフェース部１３、及びリード／ライト制御部２０を有する。
【００３８】
ホスト機器２がＮＡＮＤ型フラッシュメモリ１１にアクセスする場合、バスインタフェース３を介してアクセスコマンドをホストインタフェース部１３へ送信する。ホストインタフェース部１３は、アクセスコマンドをデコードし、リード／ライト制御部２０内のＭＰＵ１４に、ＮＡＮＤ型フラッシュメモリ１１へのアクセス処理を行うように指示を出す。ＭＰＵ１４は、リード／ライト制御部２０内のフラッシュコントローラ１５を介して、ＮＡＮＤ型フラッシュメモリ１１にアクセスする。ＭＰＵ１４は、またエラー検出部を有する。エラー検出部は、データの転送中やＮＡＮＤ型フラッシュメモリ１１へのアクセス中にエラーが発生したか否かを検出する。ここで、エラー検出部によりエラーの発生が検出された場合、ＭＰＵ４はホストインタフェース部１３内にあるレジスタ部１９のカードステータスレジスタにエラーの発生を示すエラー情報を保持する。レジスタ部１９にエラー情報が保持されたとき、ホストインタフェース部（信号処理部）１３はバスインタフェース３を介してホスト機器２へエラー信号（割り込み信号）を出力し、エラーが発生したことを通知する。その通知方法として、ＳＤＩＯ規格で定義された割り込みを用いることにより、従来との互換性を維持しながらＳＤＩＯ規格に対応したホスト機器２によりホストインタフェース部１３から出力されるエラー信号の検出が可能になる。ホスト機器２は、割り込みによるエラー信号を検出した場合、ホストインタフェース部１３内のレジスタ部１９のカードステータスレジスタに保持されたエラー情報を読み出すコマンドにより、エラーの発生を認知することができる。さらに、カードステータスレジスタに、どこで発生したエラーなのかを示すエラーステータス情報を保持しておけば、ホスト機器２は、割り込みによるエラー信号を検出した場合、カードステータスレジスタに保持されたエラーステータス情報を読み出すことにより、より詳しいエラーに関する情報を取得することができる。なお、ホスト機器２は、エラー信号を検出しない正常動作時には、このレジスタ部１９を読み出す必要はない。
【００３９】
また、ホストインタフェース部１３は、モード切り換え手段を有する。このモード切り換え手段は、エラー信号を出力するモードとエラー信号を出力しないモードとを切り換えるものである。例えば、ＳＤメモリカード１の初期化時において、モード切り換え手段はモード設定コマンドが入力されたときエラー信号を出力するモードに切り換え、モード設定コマンドが入力されないときはエラー信号を出力しないモードに設定する。
【００４０】
図８は、書き込みにおけるホスト機器２とＳＤメモリカード１との間の信号授受を示すタイミングチャートであり、バスインタフェース３を通過する信号のタイミングを示している。この図８を用いて、ＳＤメモリカードに対してデータ入出力を行うためのＳＤＩＯ規格におけるデータサイクルと割り込みサイクルについて説明する。
【００４１】
データ０（ＤＡＴ０）〜データ３（ＤＡＴ３）のラインは、書き込みにおいて、時分割でデータサイクルと割り込みサイクルに使用される。データサイクルは、データ０〜データ３のラインをデータの送受信に使用するコマンドがＳＤメモリカード１に入力された場合に設定される。図８に示すように、書き込みコマンドＷ１の入力終了後から、最終のデータブロックに対するＣＲＣステータス信号がＳＤメモリカード１から出力される直前までがデータサイクルとなる。その他の期間は割り込みサイクルとなる。なお、２つ目のコマンドＣ１は、データ０〜データ３のラインを使用しないコマンドの場合であり、このコマンドＣ１の入力によるデータサイクルは存在しない例を示している。ＳＤメモリカード１は、割り込みサイクルの期間、いつでも割り込みをホスト機器２へ出すことができる。
【００４２】
次に、第１の実施形態のＳＤメモリカードにおける書き込みにおいて、エラーが発生した場合の動作を述べる。
【００４３】
まず、１つのライトコマンドの入力により、１つのデータブロックがリード／ライト制御部２０によりＮＡＮＤ型フラッシュメモリ１１に書き込まれるシングルライトについて述べる。
【００４４】
図９は、４ビットのデータ線を用いてシングルライトを行う場合のホスト機器２とＳＤメモリカード１との間の信号授受を示すタイミングチャートであり、バスインタフェース３を通過する信号のタイミングを示している。
【００４５】
ホスト機器２からコマンド（ＣＭＤ）ラインを介してホストインタフェース部１３へライトコマンドＷ１が入力されると、ホストインタフェース部１３からレスポンス信号（Ｒｅｓ）がホスト機器２へ返信される。続いて、ホスト機器２からデータ０（ＤＡＴ０）〜データ３（ＤＡＴ３）のラインを介してホストインタフェース部１３へデータブロックが転送される。ホストインタフェース部１３は、データブロックを受信した段階で、データ転送中にエラーが発生したかどうかのエラー発生状況を通知するＣＲＣステータス信号を、データ０ラインよりホスト機器２へ返信する。さらに、このデータブロックがリード／ライト制御部２０によりＮＡＮＤ型フラッシュメモリ１１に書き込まれるまで、データ０ラインは書き込み中であることを示すビジー（Ｂｕｓｙ）状態（“Ｌ”）となる。
【００４６】
ここで、データブロックの書き込み時にエラーが発生した場合、データ１ライン（ＤＡＴ１）はエラーがあることを示すエラー（Ｅｒｒｏｒ）状態（“Ｌ”）となる。データブロックの書き込みが終了すると、データ０ラインは書き込みが終了したことを示す状態（“Ｈ”）に設定される。ホスト機器２は、データ０ラインにおいてビジー状態（“Ｌ”）から“Ｈ”への立ち上がりを検出したとき、データ１ラインの状態を見ることにより、データブロックの書き込みにおいてエラーが発生したかどうかを検出する。
【００４７】
その後、ホスト機器２からコマンドＣ１がホストインタフェース部１３へ入力され、ホストインタフェース部１３からレスポンス信号（Ｒｅｓ）がホスト機器２へ返信される。エラー状態となったデータ１ラインは、このコマンドＣ１に応答してエラー状態（“Ｌ”）から“Ｈ”へ立ち上げられ、その後、トライステート状態（ハイインピーダンス状態）となる。すなわち、エラーが発生したことを示すエラー状態は、ホスト機器２からのコマンドＣ１の入力によってクリアされる。コマンドＣ１は、コマンドの入力に対してレスポンス信号を返信可能なコマンドであればよく、すなわちコマンド入力に対してレスポンス信号の返信を伴うコマンドであればよく、例えば、書き込みコマンド、読み出しコマンド、またはその他のコマンドであってもよい。なお、データ０ラインも書き込みが終了したことを示す状態（“Ｈ”）に設定された後、トライステート状態となる。
【００４８】
データ１ライン（ＤＡＴ１）はＳＤＩＯ規格により割り込み線として定義されており、図９は、ＳＤメモリカード１がエラー発生を検出したため、データ１ラインを“Ｌ”（エラー状態）に駆動してホスト機器２に通知している様子を表している。ＳＤメモリカード１は、エラーを検出した時点でいつでもエラー情報をホスト機器２へ通知できる。すなわち、図９ではデータ０ラインがビジー状態（“Ｌ”）から“Ｈ”に立ち上がる直前に、データ１ラインを“Ｌ”（エラー状態）にしているが、ＣＲＣステータス信号の返信開始後であればいつでもデータ１ラインを“Ｌ”（エラー状態）に駆動し、エラー情報を通知することができる。
【００４９】
次に、１つのライトコマンドの入力により、複数回（ここでは、３回）に亘ってデータブロックがリード／ライト制御部２０によりＮＡＮＤ型フラッシュメモリ１１に書き込まれるマルチブロックライトについて述べる。
【００５０】
図１０及び図１１は、４ビットのデータ線を用いてマルチブロックライトを行う場合のホスト機器２とＳＤメモリカード１との間の信号授受を示すタイミングチャートであり、バスインタフェース３を通過する信号のタイミングを示している。
【００５１】
まず、図１０に示すタイミングチャートを用いて、マルチブロックライトの一例について説明する。
【００５２】
ホスト機器２からコマンド（ＣＭＤ）ラインを介してホストインタフェース部１３へライトコマンドＷ１が入力されると、ホストインタフェース部１３からレスポンス信号がホスト機器２へ返信される。続いて、ホスト機器２からデータ０（ＤＡＴ０）〜データ３（ＤＡＴ３）のラインを介してホストインタフェース部１３へデータブロックＤ１が転送される。ホストインタフェース部１３は、データブロックＤ１を受信した段階で、データ転送中のエラー発生状況を通知するＣＲＣステータス信号を、データ０ラインよりホスト機器２へ返信する。続いて、データ０（ＤＡＴ０）〜データ３（ＤＡＴ３）のラインからデータブロックＤ２が転送される。ホストインタフェース部１３は、データブロックＤ２を受信した段階で、データ転送中のエラー発生状況を通知するＣＲＣステータス信号を、データ０ラインよりホスト機器２へ返信する。
【００５３】
さらに、データ０（ＤＡＴ０）〜データ３（ＤＡＴ３）のラインからデータブロックＤ３が転送される。ホストインタフェース部１３は、データブロックＤ３を受信した段階で、データ転送中のエラー発生状況を通知するＣＲＣステータス信号を、データ０ラインよりホスト機器２へ返信する。ここで、データブロックＤ３が転送されると同時に、ホスト機器２からコマンド（ＣＭＤ）ラインを介してホストインタフェース部１３へコマンドＣ１が入力される。このコマンドＣ１は、ホスト機器２からホストインタフェース部１３へのデータブロックの転送が最後であることを示すものである。すなわち、ホスト機器２からホストインタフェース部１３への書き込みデータの転送はコマンドＣ１の入力によって終了する。最後のＣＲＣステータス信号を返信した後、データブロックＤ１〜Ｄ３がリード／ライト制御部２０によりＮＡＮＤ型フラッシュメモリ１１に書き込まれるまで、データ０ラインは書き込み中であることを示すビジー（Ｂｕｓｙ）状態（“Ｌ”）となる。
【００５４】
コマンドＣ１が入力されると、ホストインタフェース部１３からレスポンス信号Ｓ１が返信される。ここでは、レスポンス信号Ｓ１を返信するまでにエラーが発生していないため、コマンドＣ１に対するレスポンス信号Ｓ１にエラーは表示されない。
【００５５】
その後、ＮＡＮＤ型フラッシュメモリ１１へのデータブロックＤ１〜Ｄ３の書き込み時、すなわちビジー状態中にエラーが発生した場合、データ１ライン（ＤＡＴ１）はエラーがあることを示すエラー状態（“Ｌ”）となり、データ１ラインにエラー割り込みが発生する。データブロックの書き込みが終了すると、データ０ラインは書き込みが終了したことを示す状態（“Ｈ”）に設定される。ホスト機器２は、データ０ラインにおいてビジー状態（“Ｌ”）から“Ｈ”への立ち上がりを検出したとき、データ１ラインの状態を見ることにより、データブロックＤ１〜Ｄ３の書き込みにおいてエラーが発生したかどうかを検出する。
【００５６】
その後、ホスト機器２からコマンドＣ２がホストインタフェース部１３へ入力され、ホストインタフェース部１３からレスポンス信号（Ｒｅｓ）Ｓ２がホスト機器２へ返信される。このとき、コマンドＣ１に対するレスポンス信号Ｓ１の返信後にエラーが発生しているため、コマンドＣ２に対するレスポンス信号Ｓ２にエラーが表示される。言い換えると、ホスト機器２は、コマンドＣ２により、レジスタ部１９内のカードステータスレジスタに保持されたエラー情報を読み出し、そのエラー情報をレスポンス信号Ｓ２にて受け取る。エラー状態を示すデータ１ラインは、このコマンドＣ２に対するレスポンス信号Ｓ２に応答してエラー状態（“Ｌ”）から“Ｈ”へ立ち上げられ、その後、トライステート状態（ハイインピーダンス状態）となる。すなわち、エラーが発生したことを示すエラー状態は、ホスト機器２からのコマンドＣ２の入力によってクリアされる。なお、データ０ラインも書き込みが終了したことを示す状態（“Ｈ”）に設定された後、トライステート状態となる。
【００５７】
次に、図１１に示すタイミングチャートを用いて、マルチブロックライトの他の例について説明する。
【００５８】
図１０ではコマンドＣ２に対するレスポンス信号Ｓ２にエラー情報を表示する例を示したが、図１１ではコマンドＣ１に対するレスポンス信号Ｓ１にエラー情報を表示する例を示す。
【００５９】
図１０に示した例と同様に、ホストインタフェース部１３へデータブロックＤ１〜Ｄ３が転送される。データブロックＤ３の転送と同時に、コマンドＣ１が入力されると、ホストインタフェース部１３からレスポンス信号Ｓ１が返信される。ここでは、レスポンス信号Ｓ１を返信するまでにエラーが発生していたため、コマンドＣ１のレスポンス信号Ｓ１にエラーが表示される。言い換えると、ホスト機器２は、コマンドＣ１により、レジスタ部１９内のカードステータスレジスタに保持されたエラー情報を読み出し、そのエラー情報をレスポンス信号Ｓ１にて受け取る。
【００６０】
また、このエラー表示と同期して、データ１ライン（ＤＡＴ１）はエラーがあることを示すエラー状態（“Ｌ”）となり、データ１ラインにエラー割り込みが発生する。データブロックの書き込みが終了すると、データ０ラインは書き込みが終了したことを示す状態（“Ｈ”）に設定される。ホスト機器２は、データ０ラインにおいてビジー状態（“Ｌ”）から“Ｈ”への立ち上がりを検出したとき、データ１ラインの状態を見ることにより、データブロックＤ１〜Ｄ３の書き込みにおいてエラーが発生したかどうかを検出する。
【００６１】
その後、ホスト機器２からコマンドＣ２がホストインタフェース部１３へ入力され、ホストインタフェース部１３からレスポンス信号（Ｒｅｓ）Ｓ２がホスト機器２へ返信される。このとき、コマンドＣ１に対するレスポンス信号Ｓ１にエラー情報は表示され、このコマンドＣ２に対するレスポンス信号Ｓ２にはエラーは表示されていない。エラー状態となったデータ１ラインは、このコマンドＣ２に対するレスポンス信号Ｓ２に応答してエラー状態（“Ｌ”）から“Ｈ”へ立ち上げられ、その後、トライステート状態（ハイインピーダンス状態）となる。すなわち、エラーが発生したことを示すエラー状態は、ホスト機器２からのコマンドＣ２の入力によってクリアされる。  このマルチブロックライトでは、データの転送中にエラーが検出されたとき、データブロックの受信後にデータ０ラインにより返信されるＣＲＣステータス信号によってエラー情報が通知される。ＣＲＣステータス信号は、バスインタフェース３からホストインタフェース部１３にデータが正常に受け取られたかどうかを示す情報である。なお、ＣＲＣステータス信号は、エラー情報を表示する以外に、ＣＲＣステータス信号を返さないことによってエラー発生を通知する機能も持つ。
【００６２】
図９、図１０、及び図１１に示した動作では、書き込み時においてエラーが発生した場合、レジスタ部１９内のカードステータスレジスタにエラー情報が記憶される。そして、割り込みサイクルにおいてデータ１ラインからエラー信号をホスト機器２へ出力すると共に、コマンドに対するレスポンス信号にエラー情報を表示する。また、ホスト機器２からホストインタフェース部１３へのデータ転送時にエラーが発生した場合、レジスタ部１９内のカードステータスレジスタにエラー情報が記憶されると共に、データ受信後に返信されるＣＲＣステータス信号にエラー情報を表示して、ホスト機器２へ通知する。これにより、ホスト機器２は、エラーが発生したかどうかを確認するコマンドをＳＤメモリカード１に送信することなく、エラー発生の有無を検出することができる。このように、ホスト機器２はエラーが発生したかどうかを確認するコマンドを発行する必要がないため、エラー発生がない通常動作でのＳＤメモリカードの制御方法が簡素化でき、さらにこれによりコマンド発行回数を削減できるため、制御効率を向上させることができる。また、エラーの発生によってデータ１ラインから出力されるエラー信号は、ホスト機器２から送信されるコマンドによりクリアできるため、速やかに次の動作へ移行することができる。
【００６３】
前記第１の実施形態では、ＳＤＩＯとして定義されている割り込みを利用してエラー発生をホスト機器へ伝えることにより、ホスト機器は割り込みを検知するだけでエラー発生を監視することができるため、ホスト機器によるＳＤメモリカードの制御を簡素化でき、通常のアクセス動作を効率化できる。
【００６４】
［第２の実施形態］
次に、この発明の第２の実施形態のＳＤメモリカードについて説明する。前記第１の実施形態における構成と同様の部分には同じ符号を付してその説明は省略し、以下に異なる構成部分のみを説明する。
【００６５】
図１３は、第２の実施形態のＳＤメモリカードの構成を示す概略図である。ＳＤメモリカード２１は、ホスト機器２とバスインタフェース３を介して情報の授受を行う。ＳＤメモリカード２１は、非接触通信用のアンテナに接続されるピン１０及びピン１１を有する。
【００６６】
これらピン１０、１１は、ＩＣカードコントローラ２２と電気的に接続されている。複数の信号ピン２３におけるピン１乃至ピン１１に対する信号の割り当ては、例えば図１４に示すようになっている。
【００６７】
図１５は、第２の実施形態のＳＤメモリカードの構成を示す機能ブロック図である。
【００６８】
ＳＤメモリカード２１は、バスインタフェース３を介してホスト機器２からアクセスされ、ホスト機器２と情報の授受を行う。ＳＤメモリカード２１は、ＮＡＮＤ型フラッシュメモリ１１、カードコントローラ１２、及びＩＣカードコントローラ２２を含む。ホスト機器２には非接触通信用アンテナ（無線通信部）２４が設けられており、ホスト機器２のカードスロットにＳＤメモリカード２１が装着されることによりピン１０、１１が非接触通信用アンテナ２４に接続される。この非接触通信用アンテナ２４は、発信媒体に接触することなく、各種信号及びデータなどの情報を受信し、ＩＣカードコントローラ２２に伝達する。ＩＣカードコントローラ２２は、非接触通信用アンテナ２４を用いた無線通信により発生した情報（非接触通信用アンテナ２４にて受信した情報あるいは受信中であるとの情報（例えば、通信の開始及び終了を示す情報））を、割り込みサイクル期間にホストインタフェース部１３によりバスインタフェース３を介してホスト機器２へ出力する。さらに、ホストインタフェース部１３は、前記第１の実施形態と同様に、モード切り換え手段を有する。このモード切り換え手段は、前記情報を出力するモードと前記情報を出力しないモードとを切り換えるものである。例えば、ＳＤメモリカード２１の初期化時において、モード切り換え手段は所定のコマンドが入力されたとき前記情報を出力するモードに切り換え、所定のコマンドが入力されないときは前記情報を出力しないモードに設定する。また、ホストインタフェース部１３は、前記第１の実施形態と同様に、所定コマンドが入力されたとき、前記情報の出力を停止する機能も持つ。
【００６９】
無線通信機能を持つＳＤメモリカード２１においては、バスインタフェース３以外からＮＡＮＤ型フラッシュメモリ１１をアクセスする要因が存在する。従来はホスト機器２がコマンドを発行しポーリングを行わないとＳＤメモリカードの状態は検出できなかった。この第２の実施形態では、無線通信によるＳＤメモリカードの状況、あるいは無線通信により得た情報を割り込みでホスト機器２へ通知することにより、ホスト機器２によるポーリングを行うことなく、ＳＤメモリカードから情報を得ることができる。
【００７０】
図１６に、第２の実施形態の第１変形例の構成を、図１７に第２変形例の構成をそれぞれ示す。図１６は、非接触通信用アンテナ（無線通信部）２４Ａがメモリカード２１に設けられた例である。また、図１７は、有線通信部２４Ｂがメモリカード２１内に設けられた例である。図１７における有線通信部２４Ｂは、外部デバイス２５との間でバスインタフェース２６を介して通信を行う。その他主要な構成及び動作は、前記第２の実施形態のメモリカードと同様である。
【００７１】
なお、以上の各実施形態ではメモリカードがＳＤメモリカードである場合を例に挙げて説明したが、メモリカードはＳＤメモリカードに限定されるものではない。また、以上の各実施形態では割り込みとしてＳＤＩＯで定義されたものを例に挙げて説明したが、この割り込みはＳＤＩＯで定義されたものに限られない。
【００７２】
また、この発明は以下の実施態様を取りうる。
【００７３】
（１）割り込みを検出可能なホスト機器に装着して使用するメモリカードに搭載されるカードコントローラにおいて、前記ホスト機器との間でコマンドの受信とデコード及びレスポンスの送信及びデータの送受信を行うインタフェース部と、前記コマンドのデコード結果に従ってデータの書き込み及び読み出しの少なくともいずれか一方を行うリード／ライト制御部と、前記インタフェース部による前記データの送受信及び前記リード／ライト制御部による前記データの書き込み及び読み出しの少なくともいずれか一方においてエラーが発生したか否かを検出するエラー検出部と、前記エラー検出部がエラーの発生を検出したとき、前記インタフェース部がデータの送受信を行っていない期間に、前記インタフェース部を介して前記ホスト機器へ割り込み信号を出力する信号処理部とを具備することを特徴とするカードコントローラ。
【００７４】
（２）割り込みを検出可能なホスト機器に装着して使用するメモリカードに搭載されるカードコントローラにおいて、外部デバイスとの間で情報の送受信を行う通信部と、前記ホスト機器との間でコマンドの受信とデコード及びレスポンスの送信及びデータの送受信を行うインタフェース部と、前記コマンドのデコード結果に従ってデータの書き込み及び読み出しの少なくともいずれか一方を行うリード／ライト制御部と、前記通信部から発生した所定情報を、前記インタフェース部がデータの送受信を行っていない期間に、前記インタフェース部を介して前記ホスト機器へ割り込み信号として出力する信号処理部とを具備することを特徴とするカードコントローラ。
【００７５】
（３）前記インタフェース部は、前記ホスト機器から所定のコマンドが入力されたとき、前記割り込み信号の出力を停止して割り込みサイクルを終了させることを特徴とする（１）または（２）に記載のカードコントローラ。
【００７６】
（４）前記インタフェース部は、前記ホスト機器から入力される所定のコマンドにより、前記割り込み信号を出力するモードと、前記割り込み信号を出力しないモードとを切り換えることを特徴とする（１）乃至（３）のいずれか１つに記載のカードコントローラ。
【００７７】
（５）前記所定情報は、前記通信部が通信を開始または終了したことを示す情報であることを特徴とする（２）に記載のカードコントローラ。
【００７８】
（６）前記エラー検出部がエラーの発生を検出したとき、前記エラーの発生を示すエラー情報を保持するレジスタをさらに具備し、前記割り込み信号を前記ホスト機器が受け取ったとき、前記ホスト機器が前記レジスタに保持された前記エラー情報を読み出すことにより、前記ホスト機器が前記エラーの発生を認知することを特徴とする（１）に記載のカードコントローラ。
【００７９】
（７）割り込みを検出可能なホスト機器に装着され、前記ホスト機器からアクセスされるメモリカードにおいて、前記ホスト機器との間でコマンドの受信とデコード及びレスポンスの送信及びデータの送受信を行うインタフェース部と、前記データを記憶するメモリと、前記コマンドのデコード結果に従って前記メモリに対して前記データの書き込み及び読み出しの少なくともいずれか一方を行うリード／ライト制御部と、前記インタフェース部による前記データの送受信及び前記リード／ライト制御部による前記データの書き込み及び読み出しの少なくともいずれか一方においてエラーが発生したか否かを検出するエラー検出部と、前記エラー検出部がエラーの発生を検出したとき、前記インタフェース部がデータの送受信を行っていない期間に、前記インタフェース部を介して前記ホスト機器へ割り込み信号を出力する信号処理部とを具備することを特徴とするメモリカード。
【００８０】
（８）割り込みを検出可能なホスト機器に装着され、前記ホスト機器からアクセスされるメモリカードにおいて、外部デバイスとの間で情報の送受信を行う通信部と、前記ホスト機器との間でコマンドの受信とデコード及びレスポンスの送信及びデータの送受信を行うインタフェース部と、前記データを記憶するメモリと、前記コマンドのデコード結果に従って前記メモリに対して前記データの書き込み及び読み出しの少なくともいずれか一方を行うリード／ライト制御部と、前記通信部から発生した所定情報を、前記インタフェース部がデータの送受信を行っていない期間に、前記インタフェース部を介して前記ホスト機器へ割り込み信号として出力する信号処理部とを具備することを特徴とするメモリカード。
【００８１】
（９）前記インタフェース部は、前記ホスト機器から所定のコマンドが入力されたとき、前記割り込み信号の出力を停止して割り込みサイクルを終了させることを特徴とする（７）または（８）に記載のメモリカード。
【００８２】
（１０）前記インタフェース部は、前記ホスト機器から入力される所定のコマンドにより、前記割り込み信号を出力するモードと、前記割り込み信号を出力しないモードとを切り換えることを特徴とする（７）乃至（９）のいずれか１つに記載のメモリカード。
【００８３】
（１１）前記所定情報は、前記通信部が通信を開始または終了したことを示す情報であることを特徴とする（８）に記載のメモリカード。
【００８４】
（１２）前記エラー検出部がエラーの発生を検出したとき、前記エラーの発生を示すエラー情報を保持するレジスタをさらに具備し、前記割り込み信号を前記ホスト機器が受け取ったとき、前記ホスト機器が前記レジスタに保持された前記エラー情報を読み出すことにより、前記ホスト機器が前記エラーの発生を認知することを特徴とする（７）に記載のメモリカード。
【００８５】
また、前述した各実施形態はそれぞれ、単独で実施できるばかりでなく、適宜組み合わせて実施することも可能である。さらに、前述した各実施形態には種々の段階の発明が含まれており、各実施形態において開示した複数の構成要件の適宜な組み合わせにより、種々の段階の発明を抽出することも可能である。
【図面の簡単な説明】
【００８６】
【図１】この発明の第１の実施形態のＳＤメモリカードの構成を示す概略図である。
【図２】前記第１の実施形態のＳＤメモリカードにおける信号ピンに対する信号割り当てを示す図である。
【図３】前記第１の実施形態のＳＤメモリカードのハード構成を示すブロック図である。
【図４】前記第１の実施形態のＳＤメモリカードにおけるレジスタ部の詳細な構成を示す図である。
【図５】前記第１の実施形態のＳＤメモリカード内のＮＡＮＤ型フラッシュメモリにおけるデータ配置を示す図である。
【図６】各動作モードにおける信号ピンに対する信号割り当てを示す図である。
【図７】前記第１の実施形態のＳＤメモリカードの構成を示す機能ブロック図である。
【図８】ＳＤメモリカードにおける書き込み時のデータサイクルと割り込みサイクルを示すタイミングチャートである。
【図９】前記第１の実施形態のＳＤメモリカードにおけるシングルライト時のホスト機器とＳＤメモリカードとの間の信号授受を示すタイミングチャートである。
【図１０】前記第１の実施形態のＳＤメモリカードにおけるマルチブロックライト時のホスト機器とＳＤメモリカードとの間の信号授受を示すタイミングチャートである。
【図１１】前記第１の実施形態のＳＤメモリカードにおけるマルチブロックライト時のホスト機器とＳＤメモリカードとの間の信号授受を示す他の例のタイミングチャートである。
【図１２】この発明の第２の実施形態のＳＤメモリカードの構成を示す概略図である。
【図１３】前記第２の実施形態のＳＤメモリカードにおける信号ピンに対する信号割り当てを示す図である。
【図１４】前記第２の実施形態のＳＤメモリカードの構成を示す機能ブロック図である。
【図１５】前記第２の実施形態の第１変形例のＳＤメモリカードの構成を示す機能ブロック図である。
【図１６】前記第２の実施形態の第２変形例のＳＤメモリカードの構成を示す機能ブロック図である。
【符号の説明】
【００８７】
１…ＳＤメモリカード、２…ホスト機器、３…バスインタフェース、１１…ＮＡＮＤ型フラッシュメモリ、１２…カードコントローラ、１３…ホストインタフェース部、１４…ＭＰＵ、１５…フラッシュコントローラ、１６…ＲＯＭ、１７…ＲＡＭ、１８…バッファ、１９…レジスタ部、２０…リード／ライト制御部。
【図１】
2006139556.tif 000003
【図２】
2006139556.tif 000004
【図３】
2006139556.tif 000005
【図４】
2006139556.tif 000006
【図５】
2006139556.tif 000007
【図６】
2006139556.tif 000008
【図７】
2006139556.tif 000009
【図８】
2006139556.tif 000010
【図９】
2006139556.tif 000011
【図１０】
2006139556.tif 000012
【図１１】
2006139556.tif 000013
【図１２】
2006139556.tif 000014
【図１３】
2006139556.tif 000015
【図１４】
2006139556.tif 000016
【図１５】
2006139556.tif 000017
【図１６】
2006139556.tif 000018