(57)【特許請求の範囲】
【請求項１】
データの読み出しおよび書き込みが所定の容量のブロック単位毎にアクセスされるATA（AT Attachment interface for disk drivers）仕様のメモリカードと、データの特性に応じてその転送速度が異なるデータを取り扱うディジタル電子スチルカメラとを着脱自在に接続するメモリカードインタフェース装置において、該メモリカードインタフェース装置は、
前記ディジタル電子スチルカメラから前記ATA仕様のメモリカードへの制御信号をインタフェースするホストインタフェース部と、
該ホストインタフェース部からの制御信号を受けて前記ATA仕様のメモリカードにアクセスし、該メモリカードの状態信号を受けて該ATA仕様のメモリカードの規格に適合したシーケンスで制御するシーケンス制御部と、
該シーケンス制御部からの制御信号を受けて、そのシーケンスに基づいて前記ATA仕様のメモリカードへのデータのアクセスを実行するデータ制御部とを含み、
該データ制御部は、前記ATA仕様のメモリカードにて取り扱われるブロック単位のアクセス容量と同様の容量を有するデータ記憶手段を少なくとも２面以上有し、該データ記憶手段をブロック単位毎に交互に切り替えてデータのバッファリングを行い、
前記シーケンス制御部は、前記ディジタル電子スチルカメラから前記ATA仕様のメモリカードへのアクセスの際に前記ホストインタフェース部を介して供給されるアドレスを前記ATA仕様のメモリカードに応じたアドレスおよびコマンドとして生成し、これをセットするアドレスレジスタを有し、該レジスタにセットされたコマンドを前記ATA仕様のメモリカードに送出するとともに、セットされたアドレスを前記データ制御部を介して前記ATA仕様のメモリカードのアドレスバスに供給することを特徴とするメモリインタフェース装置。
【請求項２】
請求項１に記載のメモリカードインタフェース装置において、前記データ制御部は、前記ディジタル電子スチルカメラからのデータを前記ATA仕様のメモリカードに書き込む際に、前記シーケンス制御部にて前記ATA仕様のメモリカードにアクセスしている間に、前記ディジタル電子スチルカメラからの連続するデータを前記データ記憶手段にブロック単位毎に書き込み、前記シーケンス制御部を介して前記ATA仕様のメモリカードから送出された指示に応動して、前記データ記憶手段に蓄積したブロック毎のデータを前記ATA仕様のメモリカードに転送することを特徴とするメモリカードインタフェース装置。
【請求項３】
請求項１に記載のメモリカードインタフェース装置において、前記シーケンス制御部は、前記ATA仕様のメモリカードから前記ディジタル電子スチルカメラにデータを読み出す場合に、前記ATA仕様のメモリカードの指示に応動して前記ディジタル電子スチルカメラにブロック単位毎のアドレスを要求し、前記データ制御部は、該アドレスに応じて前記ATA仕様のメモリカードから読み出したデータを前記データ記憶手段のそれぞれにブロック単位毎に交互に蓄積させて、蓄積したデータを連続的に読み出して前記ディジタル電子スチルカメラに転送することを特徴とするメモリカードインタフェース装置。
【請求項４】
請求項１に記載のメモリカードインタフェース装置において、前記ディジタル電子スチルカメラは、撮像した画像データを所定の圧縮方式にて圧縮したデータを出力するディジタル電子スチルカメラであり、前記データ制御部は、該カメラからの速度差の異なる画像データを前記データ記憶手段のそれぞれにブロック単位毎に蓄積することを特徴とするメモリカードインタフェース装置。
【請求項５】
請求項１に記載のメモリカードインタフェース装置において、該装置は、前記ATA仕様のメモリカードのデータ記録領域を初期化する場合に、前記ホストインタフェース部から前記データ制御部を介して前記データ記憶手段に初期化値を表わす所定の固有値を書き込んで、これを前記ATA仕様のメモリカードのデータ領域に順次転送して、前記ATA仕様のメモリカードのデータ記録領域をそれぞれ初期化することを特徴とするメモリインタフェース装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、半導体記憶素子が搭載されたICメモリカードとそのデータを取り扱うホスト処理装置との間を接続するメモリカードインタフェース装置に係り、特に、たとえばパーソナルコンピュータ規格のメモリカードをディジタル電子スチルカメラなどのホスト処理装置に接続するメモリカードインタフェース装置に関する。
【０００２】
【従来の技術】
近年、たとえばディジタル電子スチルカメラでは、撮像した画像データを記録する媒体としてフロッピーディスクなどに代わり半導体メモリを用いたICメモリカードが使用されるようになってきた。
【０００３】
また一方、パーソナルコンピュータなどでは、モデムなどの入出力(I/O) 装置をカード化したI/O カードと、上記のようなICメモリカードとを同一のスロットにて取り扱うことができる、いわゆるPCカードの規格化が図られている。この際に、PCカードは、たとえば、PC-AT 規格の既存のハードディスクと同様なアクセスにてデータを読み出しおよび書き込むことができるようにATA(At Attachment Interface for Disk Drives)仕様のものが考えられている。この場合、データをアクセスするには、セクタ数、セクタ位置、シリンダ位置などのハードディスクと同様なコマンドおよびアドレスにて、それぞれのセクタ単位、たとえば512 バイト単位にてデータの読み出しおよび書き込みが実行される。
【０００４】
また、メモリカード内部でのデータの管理方式としては、パーソナルコンピュータにて一般に用いられる、たとえばDOS(Disk Operation System)ファイルフォーマットが用いられる。この場合、データはファイルとして取り扱われ、それぞれのファイルは連続する所定の範囲のアドレス、つまりクラスタ単位に管理されており、このカードではデータが記録されるデータ領域と、これをファイル単位に管理するFAT(File Allocation Table)およびディレクトリなどのデータ管理領域とを有していた。
【０００５】
【発明が解決しようとする課題】
しかしながら、上述したようなATA 仕様のPCカードまたはDOS ファイルフォーマットを適用したメモリカードをパーソナルコンピュータとは異なるアクセス方式にてアクセスするホスト処理装置に適用する場合、たとえば、ディジタル電子スチルカメラなどに適用する場合に、それらとPCカードとの互換をとる必要があった。
【０００６】
たとえば、ディジタル電子スチルカメラでは、画像データを記録媒体に記録する場合に、所定の圧縮符号化方式にて圧縮して記録するため、その際の画像データと圧縮率などの関係によってデータの転送速度が一定になるとは限らない。この場合、メモリカードとして、たとえばバイト単位に自由に読み出しおよび書き込みができるSRAMを採用したものでは、ホスト処理装置側のデータの転送速度に関係なくデータの書き込みおよび読み出しが実行できるが、上述したようなATA 仕様のPCカードでは、そのカード特有のアクセス方式に応じてデータの供給速度を変えなければならない問題があった。つまり、ATA 仕様のカードでは、データがセクタ単位にて取り扱われ、さらにカードへのアクセススピードがPCカードの持つ固有の速度に、アドレス、コマンド等のデータ以外の付加的なアクセスが加わるために、アクセスされてからデータを実際に書き込みまたは読み出すまでの時間が一定ではない。したがって、ディジタル電子スチルカメラのような圧縮符号化された転送速度の異なるデータを、その速度を妨げずにPCカードにアクセスし、かつPCカードでの実質的なデータの書き込みまたは読み出し速度を妨げずにデータを転送しなければならないなどの課題があった。
【０００７】
本発明は、このような従来の技術の課題を解決して、ホスト処理装置とメモリカードとで異なるデータのアクセス速度を有効に吸収することができるメモリカードインタフェース装置を提供することを目的とする。
【０００８】
【課題を解決するための手段】
本発明によるメモリカードインタフェース装置は上記課題を解決するために、データの読み出しおよび書き込みが所定の容量のブロック単位毎にアクセスされるメモリカードと、データの特性に応じてその転送速度が異なるデータを取り扱うホスト処理装置とを着脱自在に接続するメモリカードインタフェース装置において、ホスト処理装置からメモリカードへの制御信号をインタフェースするホストインタフェース部と、ホストインタフェース部からの制御信号およびメモリカードからの状態信号を受けて該メモリカードへのアクセスを実行するシーケンス制御部と、シーケンス制御部からの制御信号を受けて、そのシーケンスに基づいてメモリカードへのデータのアクセスを実行するデータ制御部とを含み、データ制御部は、メモリカードにて取り扱われるブロック単位のアクセス容量と同様の容量を有するデータ記憶手段を少なくとも２面以上有し、これらデータ記憶手段をブロック単位毎に交互に切り替えてデータのバッファリングを行なうことを特徴とする。
【０００９】
この場合、データ制御部は、ホスト処理装置からのデータをメモリカードに書き込む際に、シーケンス制御部にてメモリカードにアクセスしている間に、ホスト処理装置からの連続するデータをデータ記憶手段にブロック単位毎に書き込み、シーケンス制御部を介してメモリカードから送出された指示に応動して、データ記憶手段に蓄積したブロック毎のデータをメモリカードに転送するとよい。
【００１０】
また、シーケンス制御部は、メモリカードからホスト処理装置にデータを読み出す場合に、メモリカードの指示に応動してホスト処理装置にブロック単位毎のアドレスを要求し、データ制御部は、そのアドレスに応じてメモリカードから読み出したデータをデータ記憶手段のそれぞれにブロック単位毎に交互に蓄積させて、蓄積したデータを連続的に読み出してホスト処理装置に転送するとよい。
【００１１】
さらにシーケンス制御部は、ホスト処理装置からメモリカードへのアクセスの際にホストインタフェースを介して供給されるアドレスをメモリカードに応じたアドレスおよびコマンドとして生成し、これをセットするアドレスレジスタを有し、レジスタにセットされたコマンドを前記メモリカードに送出するとともに、セットされたアドレスをデータ制御部を介してメモリカードのアドレスバスに供給するとよい。
【００１２】
また、ホスト処理装置は、撮像した画像データを所定の圧縮方式にて圧縮したデータを出力するディジタル電子スチルカメラであり、データ制御部は、このカメラからの速度差の異なる画像データをデータ記憶手段のそれぞれにブロック単位毎に蓄積するとよい。
【００１３】
また、本発明によるメモリカードインタフェース装置は、メモリカードのデータ記録領域を初期化する場合に、ホストインタフェース部からデータ制御部を介してデータ記憶手段に初期化値を表わす所定の固有値を書き込んで、これをメモリカードのそれぞれのデータ領域に順次転送して、メモリカードのデータ記録領域をそれぞれ初期化するようにするとよい。
【００１４】
【作用】
本発明のメモリカードインタフェース装置によれば、ホスト処理装置からメモリカードへのアクセスに関する制御信号は、ホストインタフェース部から順次シーケンス制御部に供給され、ここで、たとえばパーソンルコンピュータ規格のメモリカードにアクセスする際に必要とされるパラメータが生成されて、順次メモリカードに供給される。メモリカードへのパラメータの書き込みが終了すると、メモリカードからただちに書き込み要求信号などの状態信号が送られ、これを受けたシーケンス制御部のレジスタにアドレスおよびコマンドがセットされる。次いで、データ制御手段では、シーケンス制御部からの制御に基づいて一方のデータ記憶手段からメモリカードにデータをアクセスしている間は、もう一方のデータ記憶手段に対してホスト処理装置との間にてデータをアクセスし、その間のデータの速度変換を行なう。したがって、メモリカードとのデータアクセス中にシーケンス制御部にて次のブロックのデータに関するアドレス、コマンド等のパラメータを事前にセットしておくことにより、メモリカード側の処理を意識する必要がなくデータをアクセスすることができる。また、アドレス設定、コマンド書き込み、ステータスリード等のPCカードへアクセスする際に必要とされるシーケンスは、シーケンス制御部によってハードウェア的に実行することにより、ホスト処理装置側のCPU 等の介入を極力少なくする。
【００１５】
【実施例】
次に、添付図面を参照して本発明によるメモリカードインタフェース装置の一実施例を詳細に説明する。図１には本発明におけるメモリカードインタフェース装置の一実施例が示されている。本実施例によるメモリカードインタフェース装置は、たとえば、ディジタル電子スチルカメラなどのホスト処理装置に搭載されて、このホスト処理装置と、パーソナルコンピュータ規格のメモリカード（以下PCカードと記す）との間のインタフェースをとる装置である。特に、本実施例では、PCカードにて取り扱うセクタ単位の容量と同様の容量を有するデータバッファ240,250 を２面有し、これらのデータバッファ240,250 に交互にデータを蓄積してディジタル電子スチルカメラなどのホスト処理装置とPCカードとの間の異なるデータの転送速度を吸収している点が大きな特徴点である。
【００１６】
詳細には、本実施例のメモリカードインタフェース装置50は、図１に示すようにホストインタフェース部210 と、データ制御部220 と、シーケンス制御部230 と、第１のバッファ240 と、第２のバッファ250 とを有している。ホストインタフェース部210 は、ディジタル電子スチルカメラ10の、たとえば、中央処理装置(CPU) からの制御信号をインタフェースするCPU インタフェース回路であり、たとえば８ビット双方向のバス52と複数の制御線54とで中央処理装置に接続され、16ビット双方向のデータバス56にてメモリカードに接続されている。本実施例のホストインタフェース部210 は、メモリカードが接続された場合にそのデータ管理領域からのデータ管理情報を読み出してホスト処理装置に転送するデータ管理情報読出機能と、ホスト処理装置からのデータ管理情報の書き換え情報をデータ制御部210 を介してメモリカードに供給するデータ管理情報書換機能と、ホスト処理装置からの制御信号をシーケンス制御部230 に供給する制御信号処理機能とを有する信号処理回路である。特に、本実施例では、メモリカードアクセスの際にシーケンス制御部230 への制御信号S1として、処理開始START 、レジスタ設定ATE 、処理終了FIN などのホスト処理装置からの主要な制御を表わす信号を供給する。
【００１７】
データ制御部220 は、ディジタル電子スチルカメラとPCカードとの間のデータを双方向にインタフェースするデータインタフェース回路であり、ディジタル電子スチルカメラにてデータを制御する、たとえば、メモリコントローラに双方向のバス58にて接続されて、またPCカードを接続するコネクタ300 に16ビットのデータバス60および24ビットのアドレスバス62にて接続されている。特に、本実施例のデータ制御部220 は、ホスト処理装置からメモリカードにデータを転送する場合に、バス58を介して供給される連続的なデータを第１のバッファ240 および第２のバッファ250 にたとえばセクタ単位毎に交互に書き込み、シーケンス制御部230 からの制御信号に応じてそれぞれ読み出してデータバス60を介してメモリカードに転送する。また、メモリカードからデータを読み出す場合には、メモリカードからセクタ単位に供給されるデータをそれぞれ第１のバッファ240 および第２のバッファ250 に書き込み、ホストインタフェース部210 からの制御信号に応動して蓄積したデータを連続的なデータとして読み出しホスト処理装置に転送する。バッファ240,250 は、上述したようにメモリカードでのデータアクセス容量と同様の、たとえばセクタ単位、具体的には512 バイトの容量をそれぞれ有している。
【００１８】
シーケンス制御部230 は、ホストインタフェース部210 からの制御信号を受けてPCカードにアクセスし、その状態信号を受けてデータ制御部220 をPCカード20の規格に適合したシーケンスにて制御するカード制御回路である。たとえば、本実施例では、シーケンス制御部230 にATA (At Attachment Interface for Disk Drives) 仕様のPCカードでのアドレスおよびコマンドをセットするレジスタ260 を有しており、ホスト処理装置からPCカードへアクセスするアドレスがホストインタフェース部210 を介してシーケンス制御部230 に転送されると、そのアドレスに基づいてレジスタ260 にPCカードに応じたアドレスをセットする。つまり、図３に示すようにメモリをハードディスクと同様に、セクタ数、セクタ位置、およびヘッド位置、コマンドの順に指定するパラメータをレジスタ260 にセットして、これをデータ制御部220 を介してアドレスバス60からPCカードに供給し、その後、データ制御部220 を制御してデータの送受信を実行させる。たとえば、本実施例ではホスト処理装置にアドレス要求AREQを供給して、そのアドレスをホストインタフェース部210 を介してアドレス設定ATE とともに受けると、レジスタ260 にパラメータを設定し、その間にPCカードに対してレディRDY ／ビジーBSY の信号に応動して、カードアクセスSENDを送出して、データ制御部220 を制御しつつPCカードにアクセスする。
【００１９】
図２には、上記メモリカードインタフェース装置50が搭載されたディジタル電子スチルカメラの一実施例が示されている。本実施例のディジタル電子スチルカメラ10は、CCD(Charged Coupled Device) などの撮像部100 にて撮影した画像を表わす画像データを圧縮などの所定の処理を施してメモリカード20などの記録媒体に順次記録し、記録媒体から順次、読み出したデータを元のデータに再生してCRT(Cathode Ray Tube)30 などの表示装置に表示する画像処理装置である。
【００２０】
ディジタル電子スチルカメラの各部の詳細を説明すると、撮像部100 は、その撮像面に結像した被写体像を赤、青、緑(R,G,B) 各色毎に電気信号に変換して出力する光電変換回路である。この撮像部100 からの電気信号はアナログ・デジタル(A/D) 変換器102 を介してYC処理部104 に供給される。A/D 変換器102 は、撮像部100 からのRGB それぞれアナログの画像信号を、たとえば、それぞれ10ビットのデジタルデータに変換して出力する信号変換回路である。
【００２１】
YC処理部104 は、RGB の画像データにて供給された信号を表示装置30に表示可能な輝度信号(Y) および色差信号(C) からなるYCデータに変換するデータ処理回路である。YC処理された信号は、D/A 変換器106 を介して表示装置30に表示可能となり、また、記録媒体に記録する場合にはデータバス150 を介して圧縮伸張部108 に供給される。圧縮伸張部108 は、YCデータをたとえば２次元直交変換およびハフマン符号化などの所定の圧縮方式にて圧縮し、また圧縮されたデータを逆変換して伸張し元のYCデータに戻すデータ処理回路である。圧縮された画像データはメモリコントローラ部110 からメモリカードインタフェース装置50を介してメモリカード20にそれぞれ記録される。
【００２２】
メモリコントローラ部110 は、記録媒体への画像データの記録および再生を制御するデータ制御回路であり、再生制御信号112 および撮影制御信号114 に応動してそれぞれの制御を実行する。このメモリコントローラ部110 には、画像データを展開してバッファリングするイメージバッファ120 が接続されている。イメージバッファ120 は、たとえばダイナミックRAM(DRAM) などの随時書き換え可能な記憶回路にて形成され、画像データが展開される。この場合、メモリカード20から読み出された画像データを圧縮伸張部108 にて伸張した画像データを再生する場合に適用される。このイメージバッファ120 からの画像データは低域通過フィルタ(LPF) により空間周波数が強調され、YC処理部104 およびD/A 変換器106 を介して表示装置30に表示される。
【００２３】
低域通過フィルタは、メモリコントローラ部110 に電気的回路にて形成され、その発振周波数は局部発振制御部(LPF VCO)122からの制御に基づいて適正な値にコントロールされる。再生制御信号112 は、再生信号生成部（再生用SSG)124 にて生成され、撮影制御信号114 は撮影信号生成部（撮影用SSG ）126 にて生成される。これら信号生成部124,126 は、カメラ外面に設けられたレリーズボタン、記録ボタンなどの操作部の操作に基づいて起動される。
【００２４】
中央処理装置(CPU)130は、上記各部をCPU バス160 を介して制御する制御回路であり、特に、本実施例ではメモリカードインタフェース装置50にメモリカードへのデータの書き込みおよび読み出しを制御する制御信号をたとえば８ビットのバス160(52) を介して送出する。具体的には、撮影の際に、メモリカード20の空領域をメモリカードインタフェース部50を介して検出し、そのアドレスをメモリカードインタフェース装置50に供給し、処理部104,108 にて処理された画像データをメモリコントローラ110 を介してメモリカードインタフェース装置50からPCカード20に書き込ませる。PCカード20からデータを読み出す際にはそのデータ領域をメモリカードインタフェース装置50を介して検出し、そのアドレスを生成してデータをメモリコントローラ110 に読み出し、再生処理を実行させて表示装置30に表示させる。
【００２５】
次に本実施例にて適用される68ピンのPCカード30のピン配置を図４および図５に示す。これらの図では、入出力双方向のデータバスD0〜D15 が第２〜６ピン、第30〜32ピン、第37〜41ピン、第64〜66ピンにそれぞれ接続され、そのアドレスが供給されるアドレスバスA0〜A25 が第８ピン、第10〜14ピン、第19〜29ピン、第46〜50ピン、第53〜56ピンにそれぞれ配置されており、これらはメモリカードインタフェース装置50のコネクタ300 を介してデータ制御部220 にそれぞれ接続される。
【００２６】
メモリカード30を起動する制御信号となるカードイネーブル信号-CE1,-CE2 は第７ピンおよび第42ピンに配置され、これらはコネクタ300 を介してシーケンス制御部230 に接続される。これらカードイネーブル信号-CE1,-CE2 は負論理にてアクセスされ、両方の信号が負の場合に16ビットでのデータのアクセスが実行され、信号-CE1が負、かつ信号-CE2が正の場合に、８ビットのアクセスが可能となっている。データを読み出す際に負となる出力イネーブル-OE は、第９ピンに配置され、データを書き込む際に負となるライトイネーブル-WE/-PGMは第15ピンにそれぞれ配置されており、カードイネーブルと同様にシーケンス制御部230 に接続される。
【００２７】
メモリカード30の状態を表わすレディ+RDY／ビジー-BSY端子は、第16ピンに配置されており、データの読み出しおよび書き込みが可能な場合に正となり、カード内部にて処理中などには負となってシーケンス制御部230 に状態を知らせる。動作電源VCC は第17ピンおよび第51ピンに配置され、プログラム用電源VPP1,VPP2 は第18ピンおよび52ピンに配置されており、メモリインタフェース装置50を介してホスト処理装置からの電源が供給される。データの書き込みの適否を表わすライトプロテクト-WP は第33ピンに配置され、この信号が負となっている場合にはカードからデータの読み出しのみが可能となって書き込みができないようになっている。
【００２８】
以下、第36ピンおよび第67ピンにカード検出-CD1,-CD2 の端子が配置され、記憶素子としてDRAMが採用されている際にそのリフレッシュ信号が供給されるリフレッシュRFSH端子が第43ピンに用意されている。また、第58ピンにリセット端子RESET が配置され、第59ピンにウェイト端子-WAIT が配置されている。さらに第61ピンにカードの属性などを記憶した領域をアクセスする際のアトリビュートメモリ空間セレクト-REGが配置され、カードにSRAMなどの電池が必要な場合の記憶素子が採用されている場合に電池電圧検出BVD1,BVD2 が第62ピンおよび第63ピンに配置されている。第44ピン、第45ピン、第57ピンおよび第60ピンは、予約端子RFU であり、残りの第１ピン、第34ピン、第35ピンおよび第68ピンは、グランド端子GND としてそれぞれ配置されている。
【００２９】
このようにPCカードは、プログラム可能なEEPROM,EPROMからSRAM,DRAM などのように電池の必要なあらゆる半導体記憶素子を採用可能なようにピン配置が設定されており、本実施例ではいずれの場合にも、ATA 仕様のアクセスおよびDOS ファイルフォーマットによるデータ管理方式が採用されているものとする。たとえば、図６に示すように、本実施例におけるメモリカードは、それぞれのデータを所定の容量、たとえば1024バイトのクラスタ単位に管理しており、その第１のクラスタには属性情報510 、ブートセクタ520 、FAT(File Allocation Table)530 およびディレクトリ540 を含むデータ管理領域500 が用意されている。属性情報510 は、消去や更新が禁止されているか否かの区別を示すリードオンリファイル01h 、ディレクトリコマンドでは表示されない隠しファイルを有するか否かの区別を示す隠しファイル02h 、システムファイル04h 、ボリューム名08h 、サブディレクトリであることを示すディレクトリ10h 、アーカイブファイルなどの区別20h などの属性がそれぞれの論理積をとった形式にて記録されている。
【００３０】
ブートセクタ520 は、本メモリにアクセスするために必要な種々の係数などを含み、具体的には、バージョン番号、セクタ当たりのバイト数、クラスタ当たりのセクタ数、FAT 数、FAT 当たりのセクタ数、トラックあたりのセクタ数、ヘッド数、ドライブ番号、ボリュームID番号、ボリュームラベル、ファイルシステムタイプなどが記録されている。FAT 領域530 は、それぞれのクラスタのスタートアドレスおよびエンドアドレスならびにクラスタ間の連鎖、および空きクラスタなどの区別が記録されており、このFAT 領域の内容に基づいてそれぞれのデータがアクセスされる。ディレクトリ540 は、ファイル名、ファイルタイプ、ファイル更新時刻およびファイル更新年月日、ファイルの最初のクラスタ番号、およびファイルサイズなどが記録される。
【００３１】
以上のような構成において、本実施例におけるメモリカードインタフェース装置30の動作を図７〜図９を参照して、ディジタル電子スチルカメラの動作とともに説明する。まず、ディジタル電子スチルカメラ10の主電源をオンとした状態にて、PCカード20をメモリインタフェース装置50のコネクタ300 に接続すると、PCカード20に動作電源Vcc が供給されて、PCカード20のカード検出信号-CE1,-CE2 がアクティブになる。これにより、メモリインタフェース装置50のシーケンス制御部230 にてカード検出信号-CE1,-CE2 を検出すると、ホストインタフェース部210 を介してその状態がディジタル電子スチルカメラ10の中央処理装置に通知される。
【００３２】
これにより、ディジタル電子スチルカメラ10の中央処理装置130 は、ホストインタフェース部210 を介してメモリカード20のデータ管理領域にアクセスし、バス56を介して順次その内容を読み出して、メモリカード20の管理情報を順次チェックする。たとえば、属性情報510 を読み出して接続されたPCカードへ画像データの書き込みが可能か否かなどをチェックし、次いで、ブートセクタ520 を読み出してバージョンなどのチェックを行ない、これにユーザのカード番号などが含まれていれば、これを図示しない操作表示部などに表示する。次いで、FAT 530 を読み出してクラスタ数などのチェックを行ない、データ領域の記録可能な容量などをチェックする。このチェックに合格すると、中央処理装置130 は操作表示部に撮影可能を表示する。
【００３３】
表示を見た操作者が所望の被写体にカメラ10を向けてレリーズボタンを操作すると、これに応動して中央処理装置130 は撮像部100 を制御して被写体の撮影を行なう。撮像部100 の出力はアナログデジタル変換器102 によって対応のディジタルデータに変換されてYC処理部104 に供給される。RGB の画像データを受けたYC処理部104 は、これをYCデータに変換して圧縮伸張部108 に転送する。これにより、圧縮伸張部108 は、YCデータを圧縮処理してメモリコントローラ108 に送り、ここからメモリカードインタフェース装置50を介してPCカード20にデータの記録を実行する。
【００３４】
その際、中央処理装置130 は、ホストインタフェース部210 を介してメモリカードのFAT データにアクセスして、これよりデータ領域の空き領域のクラスタを探す。画像データの記憶に必要なクラスタ数は圧縮伸張部160 にて圧縮した圧縮率に基づいて中央処理装置130 にて算出する。中央処理装置130 はこうして、メモリカード20のデータ記憶領域における所要のクラスタの先頭の記憶位置を指定するアドレスを生成して、これをメモリカードインタフェース装置50に送る。
【００３５】
メモリカードインタフェース装置50では、図７に示すように、初期状態ST10から処理開始信号を待つアイドル状態ST20に移り、ホストインタフェース部210 にて中央処理装置130 からのアドレスを受けると、シーケンス制御部230 に処理開始信号START を送出する。これにより、シーケンス制御部230 はメモリカード20の状態信号RDY/BSY を読むステータスリード状態ST30に移る。この際に、何らかのエラーがあれば、ステップST80に移り、エラー処理を実行する。エラーがなければ、カード20の状態信号がRDY=1,BSY=0 になるのを待ち、この状態になると、ホストインタフェース部210 を介して受けたアドレスなどのパラーメータに基づいてレジスタ260 にPCカード20に応じたアドレスおよびコマンド、つまり、セクタ数、セクタ位置、およびヘッド位置、コマンドの順に指定するハードディスクと同様なアドレスをセットする（ステップST40) 。
【００３６】
次いで、シーケンス制御部230は、ホスト処理装置10にデータ制御部220を介してデータ要求FRDYを供給し、メモリコントローラ110からバス58を介して送信されるデータをたとえばデータバッファ240に１セクタ分書き込み、次の割込み要求待ち状態ST50に移る。この状態にて、メモリカード20から要求があると、セットしたパラメータをデータ制御部220のアドレスバス62を介してメモリカード20に供給し、次いで、バッファ240に蓄積したデータを読み出し、データバス60を介してメモリカード20に供給する。この間に、シーケンス制御部230は第２のステータスリード状態ST60に移り、上記と同様にエラーがあればエラー処理ST80に移って、エラーがなければホスト処理装置10に対して次のデータを要求して、第２のバッファ250に次のセクタのデータを蓄積する（ステップST70）。
【００３７】
以降、シーケンス制御部230 はアイドル状態ST20に戻り、図８に示すように上記動作を繰り返して第１のバッファ240 および第２のバッファ250 にセクタ毎に交互にデータを蓄積する一方、設定したパラメータとともに蓄積したセクタ毎のデータを順次読み出してメモリカード20に供給し、これによりデータがセクタ毎に順次メモリカード20に書き込まれていく。
【００３８】
そして、１クラスタ分の画像データを送ったディジタルスチルカメラ10では、その中央処理装置130 がメモリインタフェース装置に蓄積したデータ管理領域のFAT530を読み出して、画像データを記録する次の空クラスタのスタートアドレスを算出し、上記と同様にホストインタフェース部210 に供給する。以下同様にシーケンス制御部230 の制御の下にデータ制御部220 のデータバッファ240,250 にセクタ毎に交互にデータの書き込みが実行され、クラスタ毎に中央処理装置130 がメモリカード20のデータ管理領域のFAT を参照して次のクラスタのスタート番地を生成して、クラスタ毎の画像データの書き込みが順次実行される。
【００３９】
こうして１画像分の画像データがメモリカード20に蓄積されると、中央制御装置130 はホストインタフェース部210 を介してメモリカード20のデータ管理領域の更新を行なう。たとえば、１画像分のデータの記録に使用したクラスタが連鎖するようにFAT には各クラスタに対応して次のクラスタの番号を記入し、最終のクラスタにはたとえば「全１」を記入する。同様にしてディレクトリも更新される。ディレクトリの更新は、データ種別およびスタートクラスタについて行なわれる。スタートクラスタはパケットのデータの記録に使用した一連のクラスタのうちの先頭のもののクラスタ番号であり、これが中央処理装置130 にて作成されてメモリカード20のデータ管理領域500 にて更新される。
【００４０】
一方、メモリカード20からデータを読み出す場合には、図９に示すようにディジタル電子スチルカメラ10の中央処理装置130 からのアクセスに対して、上記と同様にホストインタフェース部210 からシーケンス制御部230 に処理開始START を供給して、シーケンス制御部230 にて読み出し制御が開始される。つまり、ホスト処理装置10にアドレス要求AREQを送出すると、これに応答してホスト処理装置10からアドレスが供給され、これを受けたホストインタフェース部210 はシーケンス制御部230 にアドレスとともにレジスタ設定ATE を供給する。これによりシーケンス制御部230 にてレジスタ260 にメモリカード20に応じたアドレスをセクタ毎に設定して、これをデータ制御部220 のアドレスバス60を介してメモリカード20に送り、そのアドレスのデータをメモリカード20から順次読み出す。
【００４１】
読み出されたデータは、セクタ毎にデータバス60を介してデータ制御部220 のバッファ240 または250 に順次蓄積され、セクタ毎にバス56を介して順次メモリコントローラ110 に転送される。以上の処理がそれぞれセクタ毎にバッファ240,250 にて交互に繰り返されて、メモリカード20から１画面分のデータがメモリカードインタフェース装置50を介してディジタル電子スチルカメラ10に読み出される。
【００４２】
データを受けたメモリコントローラ110 は、これを圧縮伸張部108 に送り圧縮されたデータを逆変換などにより伸張させる。伸張されたデータはイメージバッファ100 に順次展開されて、１画面分のデータがバッファ100 に蓄積されると、メモリコントローラ110 はこれを順次読み出し低域通過フィルタなどにより空間周波数を強調して、YC処理部104 およびD/A 変換器106 を介して表示装置30に表示させる。
【００４３】
また、本実施例にてメモリカード10の初期化を行なう場合には、ホスト処理装置10から初期化の命令を送り出すと、メモリカードインタフェース装置50のホストインタフェース部210 からデータ制御部220 に所定の値、たとえば全セクタの値が「全１」となる固有値を供給してバッファ240,250 に書き込む。次いで、シーケンス制御部230 からメモリカード20の初期化する部分のアドレスをデータ制御部220 を介してメモリカード20に供給し、次いで、バッファ240,250 に書き込んだ固有値を読み出してメモリカード20に供給する。これにより、メモリカード20に固有値が順次書き込まれて所望のアドレスの初期化が実行される。以下、順次アドレスを更新してバッファ240,250 の値を繰り返しメモリカード20に供給して、ホスト処理装置10からの制御を受けることなく、自動的にメモリカード20の初期化が実行される。
【００４４】
以上のように本実施例におけるメモリインタフェース装置によれば、ディジタル電子スチルカメラ10からメモリカード20にアクセスして、データを書き込みまたは読み出す場合に、データバッファ240,250 にてセクタ毎に交互にデータをバッファリングするので、たとえば、一方のデータバッファ240 からメモリカードにデータをアクセスしている間は、もう一方のデータバッファ250 に対してホスト処理装置20との間にてデータをアクセスし、その間のデータの速度変換を行なうことができる。したがって、一方のバッファ240 または250 にてメモリカード20とのデータアクセス中に、シーケンス制御部230 にて次のセクタに関するアドレス、コマンド等のパラメータを事前にセットしておくことにより、メモリカード20側の処理を意識する必要がなくデータをアクセスすることができる。また、アドレス設定、コマンド書き込み、ステータスリード等のPCカード20へアクセスする際に必要とされるシーケンスは、シーケンス制御部230 によってハードウェア的に実行することにより、ホスト処理装置側のCPU 等の介入を極力少なくすることができる。
【００４５】
なお、上記実施例ではメモリインタフェース装置をディジタル電子スチルカメラに適用した場合を例に挙げて説明したが、本発明においては他のホスト処理装置たとえば文字データを取り扱うワードプロセッサなどに適用してもよく、さらに音声データ、画像データなどのそれぞれのデータを取り扱う各種情報処理装置に適用してもよい。
【００４６】
【発明の効果】
以上詳細に説明したように本発明によるメモリカードインタフェース装置によれば、データ制御部にメモリカードでのデータアクセス容量と同様の容量のデータ記憶手段を２面以上設けたので、たとえばディジタル電子スチルカメラのように画像データによって転送速度の異なるデータをセクタ単位毎にデータ記憶手段に記憶してからメモリカードに記録し、また、メモリカードから読み出したセクタ毎のデータをデータ記録手段に蓄積して連続的に読み出してホスト処理装置に転送して、それぞれの装置でのデータ転送速度の差を吸収することができる。
【図面の簡単な説明】
【図１】本発明によるメモリカードインタフェース装置の一実施例を示すブロック図である。
【図２】図１の実施例が適用されたディジタル電子スチルカメラの構成例を示すブロック図である。
【図３】図１の実施例にてメモリカードにアクセスする際のパラメータおよびデータのアクセス順序を示す図である。
【図４】図１の実施例に適用されるメモリカードのピン配置を示す図である。
【図５】図３に続くメモリカードのピン配置を示す図である。
【図６】本実施例におけるメモリカードのデータ記録状態を示す図である。
【図７】本実施例におけるメモリカードインタフェース装置の動作を説明するための状態遷移図である。
【図８】本実施例におけるメモリカードインタフェース装置の動作を説明するためのタイムチャートである。
【図９】本実施例におけるメモリカードインタフェース装置の動作を説明するためのタイムチャートである。
【符号の説明】
10  ディジタル電子スチルカメラ
20  メモリカード
30  表示装置
50  メモリカードインタフェース装置
110 メモリコントローラ部
130 中央処理装置
210 ホストインタフェース部
220 データ制御部
230 シーケンス制御部
240 バッファ
【図１】
0003798438.tif 000002
【図２】
0003798438.tif 000003
【図３】
0003798438.tif 000004
【図４】
0003798438.tif 000005
【図５】
0003798438.tif 000006
【図６】
0003798438.tif 000007
【図７】
0003798438.tif 000008
【図８】
0003798438.tif 000009
【図９】
0003798438.tif 000010