(57)【要約】【課題】フラッシュメモリに代表される不揮発性半導体メモリを用いたカードは、データを上書きする場合に一旦初期化を行う必要があり、書き込み性能が低下する。【解決手段】ホストインターフェース部を介して前記アクセス装置から入力されたコマンドに基づいて前記不揮発性メモリ上のファイルに対するオープン、クローズ、リード、ライト、デリートを含むファイルアクセス処理を実施するファイルシステムインターフェース制御部と、前記データ消去の最小単位である消去ブロックの状態を示す消去ブロック状態テーブルとを具備することにより、外部のアクセス機器に負担をかけることなく、高速にデータを記録可能な半導体メモリカードを提供する。【選択図】図１
2007004782.tif 000002
【特許請求の範囲】
【請求項１】
半導体メモリカードの外部に存在するアクセス装置と制御信号及びデータを送受信するホストインターフェース部と、
複数のセクタからなり、前記複数のセクタのうち連続する特定個のセクタがデータ消去の最小単位であるブロックとしてグループ化され、前記ホストインターフェース部を介して前記アクセス装置からデータが読み書きされる不揮発性メモリと、
前記ホストインターフェース部を介して前記制御信号を含むコマンドが入力されたとき、前記不揮発性メモリに対するデータの消去、書き込み、読み出しを制御するメモリコントローラと、
前記不揮発性メモリの消去ブロックサイズを含む半導体メモリカードの物理的特性に関するカード情報を格納するカード情報格納部と、
前記カード情報格納部に格納されたカード情報に基づいて前記不揮発性メモリ内に格納したデータをファイルとして管理し、前記ホストインターフェース部を介して前記アクセス装置から入力されたコマンドに基づいて前記不揮発性メモリ上のファイルに対するオープン、クローズ、リード、ライトを含むファイルアクセス処理を実施するファイルシステムインターフェース制御部と、を具備することを特徴とする半導体メモリカード。
【請求項２】
前記ファイルシステムインタフェース制御部は、前記ホストインターフェース部を介して前記アクセス装置から入力されたファイル削除コマンドに基づいて前記不揮発性メモリ上のファイルを削除することを特徴とする請求項１記載の半導体メモリカード。
【請求項３】
前記データ消去の最小単位である消去ブロックの状態を示す消去ブロック状態テーブルを備え、
前記ファイル削除コマンドを受信した場合は、前記不揮発性メモリ上の指定ファイルを削除し、かつ前記ファイルが使用していたセクタを含む消去ブロックの消去ブロック状態テーブルを未消去の状態に変更した後に、前記アクセス装置に前記ファイル削除コマンドの完了を通知することを特徴とする請求項２記載の半導体メモリカード。
【請求項４】
前記データ消去の最小単位である消去ブロックの状態を示す消去ブロック状態テーブルを備え、
前記ファイル削除コマンドを受信した場合は、前記不揮発性メモリ上の指定ファイルを削除し、かつ前記ファイルが使用していたセクタを含む消去ブロックを消去した後に、前記アクセス装置に前記ファイル削除コマンドの完了を通知することを特徴とする請求項２記載の半導体メモリカード。
【請求項５】
前記データ消去の最小単位である消去ブロックの状態を示す消去ブロック状態テーブルを備え、
前記ファイルシステムインタフェース制御部は、前記ホストインターフェース部を介して前記アクセス装置から入力された消去コマンドに対して、前記消去ブロック状態テーブルの内容にもとづき未消去の状態の消去ブロックを消去することを特徴とする請求項１または２記載の半導体メモリカード。
【請求項６】
前記データ消去の最小単位である消去ブロックの状態を示す消去ブロック状態テーブルを備え、
前記ファイルシステムインタフェース制御部は、前記ホストインターフェース部を介して前記アクセス装置から入力された消去コマンドに対して、前記消去ブロック状態テーブルの内容にもとづき未消去の状態の消去ブロックを消去し、すべての未消去状態の消去ブロックの消去が完了した後に、前記アクセス装置に前記消去コマンドの完了を通知することを特徴とする請求項１または２記載の半導体メモリカード。
【請求項７】
前記ファイルシステムインタフェース制御部は、前記ホストインターフェース部を介して前記アクセス装置から入力された消去停止コマンドに対して、前記消去コマンドにもとづき消去を行っている場合は、現在の消去中の消去ブロックへの消去が完了次第、前記消去動作を停止することを特徴とする請求項５または６記載の半導体メモリカード。
【請求項８】
前記ファイルシステムインタフェース制御部は、前記ホストインターフェース部を介して前記アクセス装置から入力された消去停止コマンドに対して、消去動作を行っている場合は、現在の消去中の消去ブロックへの消去が完了次第、前記消去動作を停止することを特徴とする請求項１から６記載の半導体メモリカード。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、高速にデータを記録することが可能な半導体メモリカードに関する。
【背景技術】
【０００２】
音楽コンテンツや、映像データ等のデジタルデータを記録する記録媒体には、磁気ディスク、光ディスク、光磁気ディスク、半導体メモリカード等、様々な種類の記録媒体が存在する。
【０００３】
半導体メモリカードは、記録素子としてＦｌａｓｈＲＯＭ等の半導体不揮発性メモリを使用しており、記録媒体の小型化が図れることから、デジタルスチルカメラや携帯電話端末等、小型の携帯機器を中心に急速に普及しつつある。
【０００４】
しかしながら、フラッシュメモリは、その特性により上書きすることができないことから、ある記憶領域の画像データを削除して、異なる画像データを記録する際には、当該領域をひとまず初期化する必要がある。したがって、この初期化を記録時に行うと、すでに初期化済みの領域に記憶を行う際の記憶終了までの時間に比べ、見かけ上データの削除は行われているが初期化されていない領域に記憶を行う際は記憶終了まで初期化時間の分だけ多く時間を要することになり、特に映像をリアルタイムに記録する機器の記録メディアとして用いた場合は、記録動作が間に合わず最悪の場合、記録停止になる可能性もある。
【０００５】
また、たとえば機器の使用者がメモリーカードを使用するに先立ってメモリカードの全消去行うとすると、長時間にわたって消去完了を待つことになり、機器の利便性が損なわれることになる。
【０００６】
この課題の解決を図る方法として、フラッシュメモリ上の記録領域が“消去状態”であるか“未消去状態”であるかを示すイレーステーブルをデータ領域上に設け、記録メディアの装着時や記録処理の開始時に、外部アクセス装置が必要に応じて所定のデータサイズ分の“消去状態”のデータ領域を作成する方法がある（たとえば、特許文献１参照）。
【０００７】
また、記録ユニット自体がイレーステーブルを元に“消去”動作を行う方法もある（たとえば、特許文献１参照）。
【特許文献１】特許第３５０７１２１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、前者の方法では外部のアクセス機器がカード内部のフラッシュメモリの状態に応じてイレーステーブルを作成し内容を更新し必要に応じて消去処理を実施する必要があり、外部アクセス機器の負担が大きいという課題がある。
【０００９】
後者の方法では、記録ユニットが消去実行対象の複数のデータ領域のうち一部を消去する場合、どの領域を選択するのが最良であるか判断ができず、効率的な消去が行えない、という課題がある。
【課題を解決するための手段】
【００１０】
この課題を解決するために、本発明の記録装置は、半導体メモリカードの外部に存在するアクセス装置と制御信号及びデータを送受信するホストインターフェース部と、
複数のセクタからなり、前記複数のセクタのうち連続する特定個のセクタがデータ消去
の最小単位であるブロックとしてグループ化され、前記ホストインターフェース部を介し
て前記アクセス装置からデータが読み書きされる不揮発性メモリと、
前記ホストインターフェース部を介して前記制御信号を含むコマンドが入力されたと
き、前記不揮発性メモリに対するデータの消去、書き込み、読み出しを制御するメモリコ
ントローラと、
前記不揮発性メモリの消去ブロックサイズを含む半導体メモリカードの物理的特性に関
するカード情報を格納するカード情報格納部と、
前記カード情報格納部に格納されたカード情報に基づいて前記不揮発性メモリ内に格納
したデータをファイルとして管理し、前記ホストインターフェース部を介して前記アクセ
ス装置から入力されたコマンドに基づいて前記不揮発性メモリ上のファイルに対するオー
プン、クローズ、リード、ライトを含むファイルアクセス処理を実施するファイルシステ
ムインターフェース制御部と、を具備することを特徴とするものである。
【発明の効果】
【００１１】
本発明によれば、外部のアクセス機器が半導体メモリカード内の不揮発性メモリに対するイレーステーブルの作成や該テーブルに基づく消去動作を行う必要なく、記録動作を高速に行うことが可能になる。
【００１２】
また、カード内部で実施される不揮発性メモリに対する消去動作を効率的に実施することができる。
【００１３】
すなわち、外部のアクセス機器に負担をかけることなく、高速にデータを記録可能な半導体メモリカードを提供することが可能になる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明にかかわる半導体メモリカードの実施の形態を図面に基づいて詳細に説明する。図１は本発明の実施の形態１における半導体メモリカード及びアクセス装置の要部構成図である。図１においてアクセス装置１００は、ＣＰＵ１０１、ＲＡＭ１０２、スロット１０３、ＲＯＭ１０４を含む。ＲＯＭ１０４にはアクセス装置１００を制御するプログラムが格納されている。このプログラムはアプリケーションプログラム１０５とカードインターフェース制御部（カードＩ／Ｆ制御部）１０６の機能を達成するための制御プログラムとを含み、ＲＡＭ１０２を一時記憶メモリの領域として使用し、ＣＰＵ１０１上で動作する。
【００１５】
スロット１０３は、半導体メモリカード１１０とアクセス装置１００との接続部であり、スロット１０３を経由してアクセス装置１００と半導体メモリカード１１０間で制御信号及びデータが送受信される。ＲＯＭ１０４内のアプリケーションプログラム１０５は、アクセス装置１００全体の制御を行い、カードインターフェース制御部１０６は、アクセス装置１００から半導体メモリカード１１０に対するアクセスの制御を行う。
【００１６】
一方、図１において半導体メモリカード１１０は、ホストインターフェース部（ホストＩ／Ｆ部）１１１、ＣＰＵ１１２、ＲＡＭ１１３、メモリコントローラ１１４、不揮発性メモリ１１５、メモリ１１６、ＲＯＭ１１７を含む。ホストインターフェース部１１１は、半導体メモリカード１１０の外部に存在するアクセス装置１００と制御信号を含むコマンドとデータとを受信すると共に、アクセス装置１００に対して応答を送受するインターフェースである。ＲＯＭ１１７には半導体メモリカード１１０を制御するプログラムが格納されており、このプログラムはＲＡＭ１１３を一時記憶領域として使用し、ＣＰＵ１１２上で動作する。ＲＯＭ１１７は更に、不揮発性メモリ１１５上のデータをファイルとして管理するためのファイルシステム制御を行うファイルシステムインターフェース制御部（ファイルシステムＩ／Ｆ制御部）１２０を含む。
【００１７】
メモリコントローラ１１４は、ホストインターフェース部１１１を介してアクセス装置１００から制御信号を含むコマンドが入力されたとき、不揮発性メモリ１１５に対するデータの消去、書き込み、読み出しを制御するものである。不揮発性メモリ１１５は、ユーザデータ等が格納されるデータ記憶領域を有し、ファイルシステムインターフェース制御部１２０により制御されるファイルシステム管理領域１１８を含む。メモリ１１６は更新可能な不揮発性メモリであり、半導体メモリカード１１０のカード情報を格納するカード情報格納部１１９を有している。カード情報は、不揮発性メモリ１１５の消去ブロックサイズを含む半導体メモリカードの物理的特性に関する情報である。
【００１８】
続いて、半導体メモリカード１１０の記録素子として使用する半導体メモリの特徴について説明する。半導体メモリは、小型及び軽量な情報記録媒体を構成することが可能であり、様々な技術分野における情報記録媒体としての確固たる地位を築きつつある。半導体メモリはＥＥＰＲＯＭ又はＦｌａｓｈＲＯＭと呼ばれる不揮発性メモリを情報記録用の素子として使用している（以下、Ｆｌａｓｈメモリという）。本実施の形態の不揮発性メモリ１１５は、複数のセクタからなり、複数のセクタのうち連続する特定個のセクタがデータ消去の最小単位であるブロックとしてグループ化され、ホストインターフェース部１１１を介してアクセス装置１００からデータが読み書きされる。
【００１９】
特に多くの不揮発性メモリで使用されるＮＡＮＤ型のＦｌａｓｈメモリには、データを書き込む前に一旦書き込み先に記録されているデータを消去して、未記録の状態に戻してからデータの書き込みを行わなければならないという特徴がある。ここでデータを消去する単位は消去ブロックと呼ばれ、アクセスの最小単位であるセクタが複数個、例えば複数のセクタのうち連続する２のｉ乗個のセクタ（ｉは０以上の整数）が集まったブロックとして管理されている。図２はＦｌａｓｈメモリにおける消去ブロックとセクタとの関係の一例を示した説明図である。図２の例では、１つの消去ブロックはｉ＝５即ち３２セクタから構成されており、アクセスはセクタ（例えば５１２バイト）単位で行うことが可能であるが、書き込みに先立ち必要となるデータの消去処理は消去ブロック（１６ＫＢ）単位で行われる。
【００２０】
この半導体メモリカード１１０におけるデータ消去及び書き込み処理の例を、図３及び図４を用いて説明する。図３及び図４は書き込み処理の一例を示すフローチャートである。特に図３は消去ブロックの倍数長のデータを書き込む場合における半導体メモリカード１１０内部の処理手順を示し、図４は１セクタのデータを書き込む場合における半導体メモリカード１１０内部の処理手順を示している。
【００２１】
図３におけるデータ記録処理では、まずアクセス装置１００から送信されたコマンドと引数を、ホストインターフェース部１１１を介して受信する（Ｓ３０１）。次に、受信したコマンドを参照し、自身が認識できない不正コマンドか否かを判定する（Ｓ３０２）。不正コマンドの場合、アクセス装置１００にエラーを通知して処理を終了する（Ｓ３０３）。認識可能なコマンドの場合、そのコマンドが書き込みコマンドであるかを判定する（Ｓ３０４）。書き込みコマンド以外の場合、各コマンドに対応した他の処理を実施する（Ｓ３０５）。書き込みコマンドの場合、コマンドと共に指定された引数が正しいかを判定する（Ｓ３０６）。不正な引数と判定した場合、アクセス装置１００にエラーを通知して処理を終了する（Ｓ３０７）。
【００２２】
引数が正しいと判定した場合、引数に格納された書き込み位置や書き込みサイズの情報から、実際にＦｌａｓｈメモリにデータを書き込む消去ブロックの物理アドレスを決定する（Ｓ３０８）。次いで、書き込みに先立ち、メモリコントローラ１１４を介して、Ｆｌａｓｈメモリに存在し、Ｓ３０８で決定した消去ブロック（物理ブロック）に存在するデータを消去する（Ｓ３０９）。次に、アクセス装置１００から１セクタ分のデータを、ホストインターフェース部１１１を介して受信する（Ｓ３１０）。データの受信を完了すると、受信した１セクタ分のデータを、メモリコントローラ１１４を介してＦｌａｓｈメモリへ書き込む（Ｓ３１１）。Ｓ３１０のデータ受信処理及びＳ３１１の書き込み処理を、１消去ブロック分のデータ書き込みが完了するまで繰り返し実施する（Ｓ３１２）。Ｓ３０８からＳ３１２までの１消去ブロック分のデータ書き込み処理を、アクセス装置１００から指定された書き込みサイズ分のデータ書き込みが完了するまで繰り返し実施する（Ｓ３１３）。アクセス装置１００から指定された書き込みサイズ分のデータ書き込みが完了した場合は処理を終了する。
【００２３】
図４におけるデータ記録処理において、Ｓ４０１〜Ｓ４１１の処理は図３のＳ３０１〜Ｓ３１１の処理と同じである。図３の処理と異なる点は、Ｓ４１２において書き込みを行う消去ブロックに含まれるデータのうち、アクセス装置１００からデータを受信する１セクタ以外のデータを、Ｓ４０８で決定した消去ブロックに書き込む点である。ＮＡＮＤ型のＦｌａｓｈメモリでは、データ書き込みに先立ち一旦データを消去する必要があり、この消去処理は消去ブロック単位でしか行えないため、１セクタのデータだけを書き込む場合でも、１消去ブロック分のデータ消去が必要である。更にＳ４１２の処理に示すようにデータ更新セクタと同一消去ブロックに含まれる既存データを新しい消去ブロックに書き戻す必要がある。
【００２４】
図３及び図４で示したようにデータ記録処理では、大きく分けてコマンド解釈処理、データ消去処理、データ書き込み処理の３つの処理が存在する。例えば、コマンド解釈のオーバーヘッドに３ｍ秒、１セクタの書き込み処理に２００μ秒、１消去ブロック（１６ＫＢ）の消去処理に２ｍ秒かかるＦｌａｓｈメモリを想定する。このＦｌａｓｈメモリの１消去ブロック（１６ＫＢ）の書き込みでは図３に示す処理が実行され、コマンド解釈に３ｍ秒、消去処理に２ｍ秒、書き込み処理に３２×２００μ秒かかり、合計１１．４ｍ秒となる。
【００２５】
同様に１セクタ（５１２Ｂ）の書き込みでは図４に示す処理が実行され、コマンド解釈に３ｍ秒、消去処理に２ｍ秒、書き込み処理に２００μ秒＋３１×２００μ秒かかり、合計１１．４ｍ秒となる。すなわち、１６ＫＢのデータを書き込んだ場合と１セクタのデータを書き込んだ場合でほぼ同じ時間がかかることになる。この例ではデータ転送時間等を考慮せず極端に性能差が出る場合について説明したが、実際のＦｌａｓｈメモリにおいても消去ブロック単位で書き込みを行った場合に書き込み時間が最短になる。
【００２６】
また、半導体メモリカード１１０の記録素子として使用するＦｌａｓｈメモリの枚数は１枚とは限らず、複数枚使用して並列処理することにより、アクセス性能を高めた半導体メモリカード１１０が存在する。このような半導体メモリカード１１０では、複数の消去ブロックを管理単位としてＦｌａｓｈメモリを制御しており、この管理単位で書き込みを行った場合に書き込み時間が最短となる。このように半導体メモリカード１１０のアクセス特性は、使用するＦｌａｓｈメモリの種類や枚数、Ｆｌａｓｈメモリの管理方法等に依存し、半導体メモリカード１１０の世代や製造者の違いにより、アクセス特性は異なる。カード情報格納部１１９に格納されるカード情報は、物理的特性とカード種別情報を有する。物理的特性はコマンド解釈のオーバヘッド、１セクタの書き込み処理時間、１消去ブロックの消去時間、消去ブロックサイズ等を含み、カード種別情報は半導体メモリカードのバージョン情報を含む。
【００２７】
続いて、半導体メモリカード１１０内の不揮発性メモリ１１５に格納されたデータを管理するファイルシステムの一例として、ＦＡＴファイルシステムを説明する。図５にＦＡＴファイルシステムの構成を示す。ファイルシステム管理領域１１８は、半導体メモリカード１１０内の不揮発性メモリ１１５におけるファイルシステムで管理する領域を意味する。ＦＡＴファイルシステムでは、ファイルシステム管理領域１１８の先頭にファイルシステム管理領域の全体を管理するための管理情報領域５０１が存在し、引き続いてファイル内のユーザデータ等を格納するデータ領域５０２が存在する。管理情報領域５０１は、マスターブートレコード・パーティションテーブル（ＭＢＲ・ＰＴ）５０３、パーティションブートセクタ（ＰＢＳ）５０４、ＦＡＴ５０５、ＦＡＴ５０６、ルートディレクトリエントリ（ＲＤＥ）５０７から構成される。
【００２８】
マスターブートレコード・パーティションテーブル５０３は、ファイルシステム管理領域を複数のパーティションと呼ばれる領域に分割して管理するための情報を格納する部分である。パーティションブートセクタ５０４は、１つのパーティション内の管理情報を格納する部分である。ＦＡＴ５０５、５０６は、ファイルに含まれるデータの物理的な格納位置を示す部分である。ルートディレクトリエントリ５０７は、ルートディレクトリ直下に存在するファイルやディレクトリの情報を格納する部分である。また、ＦＡＴ５０５、５０６は、ファイルに含まれるデータの物理的な格納位置を示す重要な領域であることから、通常はファイルシステム管理領域１１８内に２つの同じ情報を持つＦＡＴ５０５、５０６を設けることにより二重化されている。
【００２９】
データ領域５０２は複数のクラスタに分割され管理されており、各クラスタにはファイルに含まれるデータが格納されている。多くのデータを格納するファイル等は、複数のクラスタに跨ってデータを格納しており、各クラスタ間の繋がりは、ＦＡＴ５０５、５０６に格納されたリンク情報により管理されている。
【００３０】
次に図６、図７、図８を用いてＦＡＴファイルシステムにおけるファイルデータの書き込み例を説明する。図６はＦＡＴファイルシステムにおけるファイルデータの書き込み処理手順を示したフローチャートである。図７、図８はそれぞれ書き込み処理前、書き込み処理後のディレクトリエントリ７０１、ＦＡＴ５０５、５０６、データ領域５０２の一例を示した説明図である。ＦＡＴファイルシステムでは、ルートディレクトリエントリ５０７やデータ領域５０２の一部に、ファイル名やファイルサイズ、ファイル属性等の情報を格納したディレクトリエントリ７０１が格納されており、図７（ａ）にディレクトリエントリ７０１の一例が示されている。このディレクトリエントリ７０１で示されるファイル例では、ファイル名がＦＩＬＥ１．ＴＸＴであり、クラスタ番号１０からのファイルのデータが格納されている。また、ファイルサイズは１６０００バイトである。図７では１クラスタの大きさを４０９６バイトと仮定しており、４クラスタに跨ってファイルのデータが格納されている。
【００３１】
図６を用いてファイルデータの書き込み処理を説明する。ファイルデータ書き込み処理では、まず始めに対象ファイルのディレクトリエントリ７０１を読み込む（Ｓ６０１）。次に、読み込んだディレクトリエントリ７０１に格納されたファイルの開始クラスタ番号を取得し、ファイルデータの先頭位置を確認する（Ｓ６０２）。次に、ＦＡＴ５０５、５０６を読み出し、Ｓ６０２で取得したファイルデータの先頭位置から順にＦＡＴ５０５、５０６上でリンクを辿り、書き込み位置のクラスタ番号を取得する（Ｓ６０３）。
【００３２】
次に、データ書き込みに際し、ファイルに新たに空き領域を割り当てる必要があるか判定する（Ｓ６０４）。空き領域の割り当てが不要な場合Ｓ６０６の処理に進む。空き領域の割り当てが必要な場合、ＦＡＴ５０５、５０６上で空き領域を検索し、１クラスタの空き領域をファイルの終端に割り当てる（Ｓ６０５）。次に、現在参照しているクラスタ内に書き込めるだけのデータをデータ領域５０２に書き込む（Ｓ６０６）。次に、全データの書き込みが完了したかを判定する（Ｓ６０７）。まだデータが残っている場合、Ｓ６０４の処理に戻る。全データの書き込みが完了した場合、ディレクトリエントリ７０１内に格納されたファイルサイズやタイムスタンプ等を更新し、半導体メモリカード１１０に書き込む（Ｓ６０８）。最後にＦＡＴ５０５、５０６を半導体メモリカード１１０に書き込み、処理を完了する（Ｓ６０９）。
【００３３】
このようなファイルデータの書き込み処理により、図７に示された１６０００バイトのデータを持つＦＩＬＥ１．ＴＸＴに１０００バイトのデータを更に書き込んだ場合、図８に示されるような１７０００バイトのデータを持つファイルに変化する。
【００３４】
このようにＦＡＴファイルシステムでは、ファイルデータの格納領域としてクラスタ単位で領域割り当てが行われ、データが格納される。また、１つのファイルに割り当てられる複数のクラスタは必ずしも連続しているとは限らず、不連続な領域が割り当てられる可能性がある。最悪の場合、クラスタ単位に分割された不連続領域にファイルデータを書き込まれることになる。この場合、半導体メモリカード１１０に対する１回のアクセスサイズは１クラスタ以下の大きさとなり、半導体メモリカード１１０に対して最も高速にアクセスするために必要なアクセス単位がクラスタサイズよりも大きい場合、半導体メモリカード１１０の最高性能でアクセスすることができなくなる。このような問題はＦＡＴファイルシステムに限らず、他のファイルシステムにおいても発生する。
【００３５】
そのため本実施の形態では、半導体メモリカード１１０の物理的特性を含むカード情報を格納するカード情報格納部１１９を設け、カード情報を基に半導体メモリカード１１０の物理的特性に適したファイルアクセスを行うために、ファイルシステムインターフェース制御部１２０を半導体メモリカード１１０内に備える。このことにより、アクセス装置１００が半導体メモリカード１１０のアクセス特性を意識することなく、最適なファイルアクセスを行うことができる。
【００３６】
続いて本実施の形態におけるファイルシステムインターフェース制御部１２０の機能について説明する。本実施の形態では、半導体メモリカード１１０内の不揮発性メモリ１１５上に構築されたファイルシステムを、半導体メモリカード１１０内のファイルシステムインターフェース制御部１２０が制御する。そのため、アクセス装置１００は、半導体メモリカード１１０内の不揮発性メモリ１１５に格納されたファイルにアクセスするために、ファイルアクセス要求を半導体メモリカード１１０に発行する。
【００３７】
図９は、ファイルシステムインターフェース制御部１２０がアクセス装置１００から受け付ける上位のコマンド群（以下、ファイルシステムＡＰＩという）の一覧を示した図である。同図に示すように、ファイルシステムインターフェース制御部１２０は、アクセス装置１００から、ＯＰＥＮ（ファイルのオープン）や、ＣＬＯＳＥ（ファイルのクローズ）、ＲＥＡＤ（ファイルからデータを読み込む）、ＷＲＩＴＥ（ファイルへデータを書き込む）、ＤＥＬＥＴＥ（ファイルを削除する）等のファイルアクセス要求を受け付け、アクセス装置１００に対してファイルシステムの機能を提供する。即ちファイルシステムインターフェース制御部１２０は、カード情報格納部１１９に格納されたカード情報に基づいて、不揮発性メモリ１１５内に格納したデータをファイルとして管理し、ホストインターフェース部１１１を介してアクセス装置１００から入力されたコマンドに基づいて、不揮発性メモリ１１５上のファイルに対するオープン、クローズ、リード、ライトを含むファイルアクセス処理を実施する。
【００３８】
このような方法により、アクセス装置１００側にはファイルシステムを備える必要がなくなり、ファイルシステムの機能は全て半導体メモリカード１１０側から提供されることになる。
【００３９】
次に図１０〜図１４を用いて、アクセス装置１００がファイルシステムインターフェース制御部１２０を介してファイルにアクセスする例を説明する。ここでは、ファイルにアクセスする例として、ルートディレクトリ直下にファイルを作成し、データを書き込む例について説明する。図１０はアクセス装置１００側の処理手順を示すフローチャートである。図１１、図１２、図１３、図１４は夫々アクセス装置１００が半導体メモリカード１１０に発行するカード種別取得コマンド、ＯＰＥＮコマンド、ＷＲＩＴＥコマンド、ＣＬＯＳＥコマンドにおける半導体メモリカード１１０側の処理手順を示したフローチャートである。
【００４０】
まず始めに図１０を用いてアクセス装置１００側の処理手順を説明する。まずアクセス装置１００は半導体メモリカード１１０に対し、半導体メモリカード１１０のバージョン等の情報であるカード種別情報を取得するために、カード種別取得コマンドを発行する（Ｓ１００１）。次に、発行したコマンドにより半導体メモリカード１１０からカード種別情報が取得できたかを判定する（Ｓ１００２）。取得に失敗した場合はエラーが発生したと判断し、処理を終了する（Ｓ１００３）。
【００４１】
取得に成功した場合、半導体メモリカード１１０がファイルシステムＡＰＩに対応しているかを判定する（Ｓ１００４）。対応していない半導体メモリカード１１０であれば、ファイルシステムＡＰＩを用いたアクセスが行えないため、処理を終了する（Ｓ１００５）。対応している半導体メモリカード１１０であれば、ファイルを作成するために、半導体メモリカード１１０に対し、ファイル名を指定してＯＰＥＮコマンドを発行する（Ｓ１００６）。
【００４２】
次に、発行したＯＰＥＮコマンドによる処理が成功したかを判定する（Ｓ１００７）。処理に失敗した場合はエラー終了する（Ｓ１００８）。処理に成功した場合、ＯＰＥＮコマンドのレスポンスとして、作成したファイルにアクセスするために使用するファイルハンドルを半導体メモリカード１１０から取得する。次にファイルに格納するデータを作成する（Ｓ１００９）。次に、作成したデータをファイルに書き込むために、ＯＰＥＮコマンドにより取得したファイルハンドル、書き込みサイズ、作成したデータ等を指定し、半導体メモリカード１１０に対しＷＲＩＴＥコマンドを発行する（Ｓ１０１０）。
【００４３】
次に、発行したＷＲＩＴＥコマンドによる処理が成功したかを判定する（Ｓ１０１１）。処理に失敗した場合はエラー終了する（Ｓ１０１２）。処理に成功した場合、ファイルハンドルを指定し、半導体メモリカード１１０に対しＣＬＯＳＥコマンドを発行する（Ｓ１０１３）。次に、発行したＣＬＯＳＥコマンドによる処理が成功したかを判定する（Ｓ１０１４）。処理に失敗した場合はエラー終了する（Ｓ１０１５）。処理に成功した場合はファイル作成及びデータ書き込み処理を終了する。
【００４４】
上記処理手順の内、Ｓ１００１、Ｓ１００６、Ｓ１０１０、Ｓ１０１３のコマンド発行処理は、アクセス装置１００内のカードインターフェース制御部１０６が実施し、その他の処理はアプリケーションプログラム１０５が実施する。
【００４５】
次に、図１１から図１４を用いて半導体メモリカード１１０側の処理手順を説明する。図１１はカード種別取得コマンド発行時の半導体メモリカード１１０側の処理手順を示したフローチャートである。まず半導体メモリカード１１０はアクセス装置１００からコマンドを受信する（Ｓ１１０１）。次に、受信したコマンドを参照し、自身が認識できない
不正コマンドか否かを判定する（Ｓ１１０２）。不正コマンドの場合、アクセス装置１００にエラーを通知して処理を終了する（Ｓ１１０３）。認識可能なコマンドの場合、そのコマンドがカード種別取得コマンドであるかを判定する（Ｓ１１０４）。カード種別取得コマンド以外の場合、各コマンドに対応した他の処理を実施する（Ｓ１１０５）。カード種別取得コマンドの場合、カード情報格納部１１９に格納されたカード種別情報を読み出す（Ｓ１１０６）。最後に読み出したカード種別情報をアクセス装置１００に送信し、ここでの処理を終了する（Ｓ１１０７）。
【００４６】
図１２はＯＰＥＮコマンド発行時の半導体メモリカード１１０側の処理手順を示したフローチャートである。まず半導体メモリカード１１０はアクセス装置１００からコマンドを受信する（Ｓ１２０１）。次に、受信したコマンドを参照し、自身が認識できない不正コマンドか否かを判定する（Ｓ１２０２）。不正コマンドの場合、アクセス装置１００にエラーを通知して処理を終了する（Ｓ１２０３）。認識可能なコマンドの場合、そのコマンドがＯＰＥＮコマンドであるかを判定する（Ｓ１２０４）。
【００４７】
ＯＰＥＮコマンド以外の場合、各コマンドに対応した他の処理を実施する（Ｓ１２０５）。ＯＰＥＮコマンドの場合、コマンドと共に渡された引数が正しいか判定する（Ｓ１２０６）。引数で不正なファイル名を指定した場合等、ＯＰＥＮ処理を実施できないと判断した場合、アクセス装置１００にエラーを通知して処理を終了する（Ｓ１２０７）。引数が正しい場合、ルートディレクトリエントリ領域をＲＡＭ１１３に読み込む（Ｓ１２０８）。
【００４８】
次に、ＲＡＭ１１３に読み込んだルートディレクトリエントリ領域内で空きディレクトリエントリを取得する（Ｓ１２０９）。取得に失敗した場合、アクセス装置１００にエラーを通知して処理を終了する（Ｓ１２１１）。取得に成功した場合、ＯＰＥＮコマンドの引数で指定されたファイル名を持つファイルのディレクトリエントリをＲＡＭ１１３上に作成する（Ｓ１２１２）。次に、ＲＡＭ１１３上に作成したディレクトリエントリを不揮発性メモリ１１５に書き込む（Ｓ１２１３）。
【００４９】
次に、作成したファイルにアクセスするために必要な情報をオープンファイル情報としてＲＡＭ１１３上に作成する（Ｓ１２１４）。このオープンファイル情報には、ファイル名、ファイルサイズ、ディレクトリエントリの位置、読み出し専用オープン・書き込み専用オープン等のオープン属性、ファイル内の現在参照位置等が含まれる。最後に、オープンファイル情報を一意に識別するファイルハンドルを作成し、アクセス装置１００に通知して処理を終了する（Ｓ１２１５）。ＯＰＥＮ処理後のファイルアクセスは、このファイルハンドルを使用してアクセスする。
【００５０】
図１３はＷＲＩＴＥコマンド発行時の半導体メモリカード１１０側の処理手順を示した図である。まず半導体メモリカード１１０はアクセス装置１００からコマンドを受信する（Ｓ１３０１）。次に、受信したコマンドを参照し、自身が認識できない不正コマンドか否かを判定する（Ｓ１３０２）。不正コマンドの場合、アクセス装置１００にエラーを通知して処理を終了する（Ｓ１３０３）。認識可能なコマンドの場合、そのコマンドがＷＲＩＴＥコマンドであるかを判定する（Ｓ１３０４）。ＷＲＩＴＥコマンド以外の場合、各コマンドに対応した他の処理を実施する（Ｓ１３０５）。
【００５１】
ＷＲＩＴＥコマンドの場合、コマンドと共に渡された引数が正しいか判定する（Ｓ１３０６）。引数で不正なファイルハンドルを指定した場合等、ＷＲＩＴＥ処理を実施できないと判断した場合、アクセス装置１００にエラーを通知して処理を終了する（Ｓ１３０７）。引数が正しい場合、ファイルハンドルを基にＲＡＭ１１３上のオープンファイル情報を特定する（Ｓ１３０８）。次に、特定したオープンファイル情報を参照し、ファイル内の現在参照位置を確認する（Ｓ１３０９）。
【００５２】
次に、データ書き込みに先立ち、空き領域の取得が必要かを判定する（Ｓ１３１０）。空き領域の取得が不要な場合、Ｓ１３１５の処理に進む。空き領域の取得が必要な場合、ＲＡＭ１１３上のＦＡＴを参照し、空きクラスタを取得する（Ｓ１３１１）。ここでは、ＦＡＴが予め不揮発性メモリ１１５からＲＡＭ１１３に読み込まれていると想定する。取得に失敗した場合、アクセス装置１００にエラーを通知して処理を終了する（Ｓ１３１３）。取得に成功した場合、ＲＡＭ１１３上でＦＡＴを更新し、Ｓ１３１１で取得した空きクラスタを使用中クラスタに変更する（Ｓ１３１４）。
【００５３】
次に、不揮発性メモリ１１５内のＳ１３１１で取得した空きクラスタ位置に、データを書き込む（Ｓ１３１５）。Ｓ１３１０からＳ１３１５までの処理を、全データの書き込みが完了するまで繰り返す（Ｓ１３１６）。全データの書き込みが完了した場合、ＲＡＭ１１３上のオープンファイル情報に格納されたファイルサイズ等の情報を更新する（Ｓ１３１７）。最後に処理完了をアクセス装置１００に通知して処理を終了する（Ｓ１３１８）。
【００５４】
図１４はＣＬＯＳＥコマンド発行時の半導体メモリカード１１０側の処理手順を示したフローチャートである。まず半導体メモリカード１１０はアクセス装置１００からコマンドを受信する（Ｓ１４０１）。次に、受信したコマンドを参照し、自身が認識できない不正コマンドか否かを判定する（Ｓ１４０２）。不正コマンドの場合、アクセス装置１００にエラーを通知して処理を終了する（Ｓ１４０３）。認識可能なコマンドの場合、そのコマンドがＣＬＯＳＥコマンドであるかを判定する（Ｓ１４０４）。
【００５５】
ＣＬＯＳＥコマンド以外の場合、各コマンドに対応した他の処理を実施する（Ｓ１４０５）。ＣＬＯＳＥコマンドの場合、コマンドと共に渡された引数が正しいかを判定する（Ｓ１４０６）。引数で不正なファイルハンドルを指定した場合等、ＣＬＯＳＥ処理を実施できないと判断した場合、アクセス装置１００にエラーを通知して処理を終了する（Ｓ１４０７）。引数が正しい場合、ファイルハンドルを基にＲＡＭ１１３上のオープンファイル情報を特定する（Ｓ１４０８）。次に、特定したオープンファイル情報を参照し、オープンファイルのディレクトリエントリの格納位置を特定し、ディレクトリエントリを含む１セクタ分のデータをＲＡＭ１１３に読み込む（Ｓ１４０９）。
【００５６】
次に、オープンファイルのディレクトリエントリに格納されたファイルサイズやタイムスタンプ等をＲＡＭ１１３上で更新する（Ｓ１４１０）。次に、ＲＡＭ１１３上のディレクトリエントリを不揮発性メモリ１１５に書き込む（Ｓ１４１１）。次に、ＲＡＭ１１３上のＦＡＴを不揮発性メモリ１１５に書き込む（Ｓ１４１２）。ディレクトリエントリ、ＦＡＴの書き込みを完了した後、ＲＡＭ１１３上のオープンファイル情報をクリアし、ファイルがオープンされていない状態に変更する（Ｓ１４１３）。最後に処理完了をアクセス装置１００に通知して処理を終了する（Ｓ１４１４）。
【００５７】
次に図１５〜図１７を用いて、アクセス装置１００がファイルシステムインターフェース制御部１２０を介してファイルにアクセスする別の例を説明する。ここでは、ファイルにアクセスする例として、ルートディレクトリ直下にあるファイルを削除する例について説明する。図１５はアクセス装置１００側の処理手順を示すフローチャートである。図１６はアクセス装置１００が半導体メモリカード１１０に発行するカード種別取得コマンド、ＤＥＬＥＴＥコマンドにおける半導体メモリカード１１０側の処理手順を示したフローチャートである。図１７は消去ブロック状態テーブルの一例であり、各消去ブロックの状態を示している。消去ブロックの状態が“０”とは未使用ブロックかつ消去済であり即座にデータを書き込むことのできる状態であることを示し、“１”とは未使用ブロックではあるが消去が行われておらずデータを書き込む前に消去動作が必要であることを示し、“２”とは現在有効なデータが書き込まれており使用中であることを示す。
【００５８】
まず始めに図１５を用いてアクセス装置１００側の処理手順を説明する。アクセス装置１００は半導体メモリカード１１０に対し、半導体メモリカード１１０のバージョン等の情報であるカード種別情報を取得するために、カード種別取得コマンドを発行する（Ｓ１５０１）。次に、発行したコマンドにより半導体メモリカード１１０からカード種別情報が取得できたかを判定する（Ｓ１５０２）。取得に失敗した場合はエラーが発生したと判断し、処理を終了する（Ｓ１５０３）。
【００５９】
取得に成功した場合、半導体メモリカード１１０がファイルシステムＡＰＩに対応しているかを判定する（Ｓ１５０４）。対応していない半導体メモリカード１１０であれば、ファイルシステムＡＰＩを用いたアクセスが行えないため、処理を終了する（Ｓ１５０５）。対応している半導体メモリカード１１０であれば、ファイルを削除するために、半導体メモリカード１１０に対し、ファイル名を指定してＤＥＬＥＴＥコマンドを発行する（Ｓ１５０６）。
【００６０】
次に、発行したＤＥＬＥＴＥコマンドによる処理が成功したかを判定する（Ｓ１５０７）。処理に失敗した場合はエラー終了する（Ｓ１５０８）。
【００６１】
上記処理手順の内、Ｓ１５０１、Ｓ１５０６のコマンド発行処理は、アクセス装置１００内のカードインターフェース制御部１０６が実施し、その他の処理はアプリケーションプログラム１０５が実施する。
【００６２】
次に、図１６と図１７を用いて半導体メモリカード１１０側の処理手順を説明する。
【００６３】
図１６はＤＥＬＥＴＥコマンド発行時の半導体メモリカード１１０側の処理手順を示したフローチャートである。まず半導体メモリカード１１０はアクセス装置１００からコマンドを受信する（Ｓ１６０１）。次に、受信したコマンドを参照し、自身が認識できない不正コマンドか否かを判定する（Ｓ１６０２）。不正コマンドの場合、アクセス装置１００にエラーを通知して処理を終了する（Ｓ１６０３）。認識可能なコマンドの場合、そのコマンドが消去コマンドであるかを判定する（Ｓ１６０４）。
【００６４】
ＤＥＬＥＴＥコマンド以外の場合、各コマンドに対応した他の処理を実施する（Ｓ１６０５）。ＤＥＬＥＴＥコマンドの場合、コマンドと共に渡された引数が正しいか判定する（Ｓ１６０６）。引数で不正なファイル名を指定した場合等、ＤＥＬＥＴＥ処理を実施できないと判断した場合、アクセス装置１００にエラーを通知して処理を終了する（Ｓ１６０７）。引数が正しい場合、ルートディレクトリエントリ領域をＲＡＭ１１３に読み込む（Ｓ１６０８）。
【００６５】
次に、ＲＡＭ１１３に読み込んだルートディレクトリエントリ領域内でＤＥＬＥＴＥコマンドの引数で指定されたファイル名に対応するファイルのディレクトリエントリを取得する（Ｓ１６０９）。取得に失敗した場合、アクセス装置１００にエラーを通知して処理を終了する（Ｓ１６１１）。取得に成功した場合、ＦＡＴをＲＡＭ１１３に読み込み、リンクを辿り当該ファイルの使用しているクラスタ番号を取得する（Ｓ１６１２）。次に、ＲＡＭ１１３上にＳ１６０９で取得したディレクトリエントリを削除しＳ１６１２で取得したクラスタ番号を未使用状態に変更する（Ｓ１６１３）。未使用状態に変更したクラスタを含む
消去ブロックは“使用”状態から”不使用かつ未消去“状態に変更するために消去ブロック状態テーブルの値を”２“から”１“に変更する（Ｓ１６１４）。次にＲＡＭ１１３上のディレクトリエントリを不揮発性メモリ１１５に書き込む（Ｓ１６１５）。次に、ＲＡＭ１１３上のＦＡＴを不揮発性メモリ１１５に書き込む（Ｓ１６１６）。最後に処理完了をアクセス装置１００に通知して処理を終了する（Ｓ１６１７）。
【００６６】
なお、Ｓ１６１４で行う処理の代わりに、未使用状態に変更したクラスタを含む消去ブロックに対して消去動作を行い、消去ブロック状態テーブルの値を”２“から”０“に変更してもよい。このようにすることで、たとえば次にＷＲＩＴＥコマンドを受信した場合はＤＥＬＥＴＥしたファイルの領域を即座にデータ書き込み領域として利用することができるようになる。
【００６７】
ここで、アクセス装置１００側および半導体メモリカード１１０が具備する消去コマンドおよび消去停止コマンドについて図１８〜図２０を用いて動作の一例を説明する。
【００６８】
図１８はアクセス装置１００側の処理手順を示すフローチャートである。図２０はアクセス装置１００が半導体メモリカード１１０に発行する消去コマンドにおける半導体メモリカード１１０側の処理手順を示したフローチャートである。
【００６９】
まず始めに図１８を用いてアクセス装置１００側の処理手順を説明する。アクセス装置１００は半導体メモリカード１１０に対し、ファイルを削除するために、半導体メモリカード１１０に対し、消去コマンドを発行する（Ｓ１８０６）。
【００７０】
次に、発行した消去コマンドによる処理が成功したかを判定する（Ｓ１８０７）。処理に失敗した場合はエラー終了する（Ｓ１８０８）。
【００７１】
図１９は消去停止コマンドについて同様の手順を示したものであるため説明を省略する。
【００７２】
次に、図２０を用いて半導体メモリカード１１０側の処理手順を説明する。
【００７３】
図２０は消去コマンド発行時の半導体メモリカード１１０側の処理手順を示したフローチャートである。まず半導体メモリカード１１０はアクセス装置１００からコマンドを受信する（Ｓ２００１）。次に、受信したコマンドを参照し、自身が認識できない不正コマンドか否かを判定する（Ｓ２００２）。不正コマンドの場合、アクセス装置１００にエラーを通知して処理を終了する（Ｓ２００３）。認識可能なコマンドの場合、そのコマンドが消去コマンドであるかを判定する（Ｓ２００４）。
【００７４】
消去コマンド以外の場合、各コマンドに対応した他の処理を実施する（Ｓ２００５）。消去コマンドの場合、コマンドと共に渡された引数が正しいか判定する（Ｓ２００６）。引数で不正なファイル名を指定した場合等、消去処理を実施できないと判断した場合、アクセス装置１００にエラーを通知して処理を終了する（Ｓ２００７）。引数が正しい場合、消去ブロック状態テーブルを読み出して“未使用かつ未消去”のブロックがあるかどうか判定する（Ｓ２００８）。“未使用かつ未消去”のブロックが存在しなければ処理完了をアクセス装置１００に通知して終了する（Ｓ２００９）。存在する場合は、消去コマンド受信後に、消去停止コマンドを受信したかどうか判定する（Ｓ２０１０）。受信していれば処理を中断しアクセス装置１００に通知して終了する（Ｓ２０１１）。
【００７５】
次に、受信していなければ消去対象となる“未使用かつ未消去”のブロックを選択し（Ｓ２０１２）、消去を実行する（Ｓ２０１３）。そして消去ブロック状態テーブルを更新する（Ｓ２０１４）。次はＳ２００８に戻り“未使用かつ未消去”のブロックがあるかどうか判定する。この処理を、“未使用かつ未消去”のブロックが無くなるか、あるいは消去停止コマンドを受信するまで実行される。
【００７６】
なお、消去停止コマンドを使用しなければ消去コマンド実行後はすべての“未使用かつ未消去”のブロックがなくなるまで消去が実行されるのは言うまでもない。
【００７７】
また、たとえば非常に多くの“未使用かつ未消去”のブロックがメモリカード内に存在する場合に消去コマンドを実行した場合には、実行完了までには長い時間がかかる可能性がある。その場合は消去停止コマンドを実行して消去コマンドを一度終了させて、他のコマンド等を実行し、その後消去コマンドを再度実行してもよい。
【００７８】
このような本実施の形態によれば、アクセス装置１００はファイルシステムＡＰＩのコマンドを発行するのみであり、ファイルシステムの制御は半導体メモリカード１１０側で実施される。そのため、アクセス装置１００が半導体メモリカード１１０の特性を認識する必要はなく、半導体メモリカード１１０内で最適なファイルアクセスを実施することができる。
【産業上の利用可能性】
【００７９】
以上のように、本発明に関わる半導体メモリカードは、外部のアクセス機器が半導体メモリカード内の不揮発性メモリに対するイレーステーブルの作成や該テーブルに基づく消去動作を行う必要なく、記録動作を高速に行うことが可能になる。
【００８０】
また、カード内部で実施される不揮発性メモリに対する消去動作を効率的に実施することができる。
【００８１】
このような半導体メモリカードは、デジタルＡＶ機器や携帯電話端末、ＰＣ等の情報記録媒体として利用することができる。また、転送レートの高い高品質ＡＶデータを記録する機器の情報記録媒体として利用する場合は特に好適に機能する。
【図面の簡単な説明】
【００８２】
【図１】本発明の実施の形態１における半導体メモリカード及びアクセス装置の構成図
【図２】実施の形態１における消去ブロックとセクタとの関係例を示した説明図
【図３】実施の形態１における半導体メモリカードへの消去ブロック倍数長のデータ書き込み処理を示したフローチャート
【図４】実施の形態１における半導体メモリカードへの１セクタ分のデータ書き込み処理を示したフローチャート
【図５】実施の形態１におけるＦＡＴファイルシステムの構成図
【図６】実施の形態１におけるＦＡＴファイルシステムのデータ書き込み処理を示したフローチャート
【図７】実施の形態１におけるＦＡＴファイルシステムのデータ書き込み前の状態を示した説明図
【図８】実施の形態１におけるＦＡＴファイルシステムのデータ書き込み後の状態を示した説明図
【図９】実施の形態１におけるファイルシステムＡＰＩの一覧を示した説明図
【図１０】実施の形態１におけるアクセス装置の内部処理を示したフローチャート
【図１１】実施の形態１における半導体メモリカード内部のカード種別取得コマンド処理を示したフローチャート
【図１２】実施の形態１における半導体メモリカード内部のＯＰＥＮコマンド処理を示したフローチャート
【図１３】実施の形態１における半導体メモリカード内部のＷＲＩＴＥコマンド処理を示したフローチャート
【図１４】実施の形態１における半導体メモリカード内部のＣＬＯＳＥコマンド処理を示したフローチャート
【図１５】実施の形態１におけるアクセス装置の内部処理を示したフローチャート
【図１６】実施の形態１における半導体メモリカード内部のＤＥＬＥＴＥコマンド処理を示したフローチャート
【図１７】実施の形態１における半導体メモリカード内部の消去ブロック状態テーブルの説明図
【図１８】実施の形態１におけるアクセス装置の内部の消去コマンド処理を示したフローチャート
【図１９】実施の形態１におけるアクセス装置の内部の消去停止コマンド処理を示したフローチャート
【図２０】実施の形態１における半導体メモリカード内部の消去コマンド処理を示したフローチャート
【符号の説明】
【００８３】
１００  アクセス装置
１０１，１１２  ＣＰＵ
１０２，１１３  ＲＡＭ
１０３  スロット
１０４，１１７  ＲＯＭ
１０５  アプリケーションプログラム
１０６  カードインターフェース制御部
１１０  半導体メモリカード
１１１  ホストインターフェース部
１１４  メモリコントローラ
１１５  不揮発性メモリ
１１６  メモリ
１１８，１６０１，１６０２  ファイルシステム管理領域
１１９  カード情報格納部
１２０，２９０１，２９０２，２９０３  ファイルシステムインターフェース制御部
５０１  管理情報領域
５０２  データ領域
５０３  マスターブートレコード・パーティションテーブル
５０４  パーティションブートセクタ
５０５，５０６  ＦＡＴ
５０７  ルートディレクトリエントリ
７０１  ディレクトリエントリ
１６０３  低レベルＩＯインターフェース制御部
１７０１  ファイルシステム制御部
２５０１  同期制御部
２６０１  ＦＡＴ（ＲＡＭ上）
２６０２，２６０３，２６０４，２６０５  オープンファイル情報
【図１】
2007004782.tif 000003
【図２】
2007004782.tif 000004
【図３】
2007004782.tif 000005
【図４】
2007004782.tif 000006
【図５】
2007004782.tif 000007
【図６】
2007004782.tif 000008
【図７】
2007004782.tif 000009
【図８】
2007004782.tif 000010
【図９】
2007004782.tif 000011
【図１０】
2007004782.tif 000012
【図１１】
2007004782.tif 000013
【図１２】
2007004782.tif 000014
【図１３】
2007004782.tif 000015
【図１４】
2007004782.tif 000016
【図１５】
2007004782.tif 000017
【図１６】
2007004782.tif 000018
【図１７】
2007004782.tif 000019
【図１８】
2007004782.tif 000020
【図１９】
2007004782.tif 000021
【図２０】
2007004782.tif 000022