(57)【要約】【課題】消去及び書き込み処理中に動作電源が遮断されても記憶情報が不所望に消失しないメモリカードを提供する。【解決手段】不揮発性メモリ（２）は、そのメモリ領域の物理アドレス毎に空き情報フラグを対応付けた消去テーブル（２０）と、論理アドレス毎にメモリ領域の物理アドレスを対応付けたアドレス変換テーブル（２１）とを有し、空き情報フラグは対応メモリ領域が消去許可か否かを示す。制御回路（５）は、消去テーブルの空き情報フラグを参照して書き換えデータを書き込むメモリ領域を決定し、データを書き込んだメモリ領域の物理アドレスと論理アドレスとを対応をアドレス変換テーブルに反映し、消去テーブルの空き情報フラグを更新する。書き換えデータを書き込むメモリ領域は消去テーブルの空き情報フラグを参照して決定し、書き換え前のメモリ領域と同じメモリ領域で書き換えを行わない。【選択図】　　　　図１
2004127185.tif 000002
【特許請求の範囲】
【請求項１】
消去及び書き込み可能な不揮発性メモリと、制御回路とを有し、
前記不揮発性メモリのメモリアレイは、そのメモリ領域の物理アドレス毎に空き情報フラグを対応付けた消去テーブルを有し、
前記空き情報フラグは対応メモリ領域が消去許可であることを示す第１状態又は消去不許可であることを示す第２状態を有し、
前記制御回路は、書き換えデータを書き込むメモリ領域の検索に前記消去テーブルを参照することを特徴とするメモリカード。
【請求項２】
消去及び書き込み可能な不揮発性メモリと、制御回路とを有し、
前記不揮発性メモリは、メモリアレイの一部に、そのメモリ領域の物理アドレス毎に空き情報フラグを対応付けた消去テーブルを有し、
前記空き情報フラグは対応メモリ領域が消去許可であることを示す第１状態又は消去不許可であることを示す第２状態を有し、
前記制御回路は、前記消去テーブルを検索して得られる第１状態の空き情報フラグに応ずる物理アドレスを、書き換えデータを書き込むメモリ領域とすることを特徴とするメモリカード。
【請求項３】
消去及び書き込み可能な不揮発性メモリと、制御回路とを有し、
前記不揮発性メモリのメモリアレイは、そのメモリ領域の物理アドレス毎に空き情報フラグを対応付けた消去テーブルと、論理アドレス毎にメモリ領域の物理アドレスを対応付けたアドレス変換テーブルとを有し、前記空き情報フラグは対応メモリ領域が消去許可か否かを示し、
前記制御回路は、前記消去テーブルの空き情報フラグを参照して書き換えデータを書き込むメモリ領域を決定し、データを書き込んだメモリ領域の物理アドレスと論理アドレスとを対応付けてアドレス変換テーブルを更新すると共に、消去テーブルの空き情報フラグを更新することを特徴とするメモリカード。
【請求項４】
前記消去テーブルは、異なった消去単位とされる複数のメモリ領域に分割配置され、書き換えデータを書き込むメモリ領域を決定するのに参照される消去テーブルは、書き換えされるデータが保持されたメモリ領域に応ずる空き情報フラグを保有する消去テーブルに対し、異なった消去単位のメモリ領域に形成された消去テーブルとされることを特徴とする請求項３記載のメモリカード。
【請求項５】
消去テーブルの空き情報フラグを更新する処理は、書き換えデータを書き込むメモリ領域を決定するのに参照される消去テーブルに対して書き換えデータの書き込みに決定されたメモリ領域に応ずる空き情報フラグを消去不許可とする第１更新処理と、前記書き換えされるデータが保持されたメモリ領域に応ずる空き情報フラグを保有する消去テーブルに対して当該空き情報フラグを消去許可とする第２更新処理とであることを特徴とする請求項４記載のメモリカード。
【請求項６】
前記第１更新処理を行ってから第２更新処理を行うことを特徴とする請求項５記載のメモリカード。
【請求項７】
前記第１更新処理と第２更新処理の間に、前記データを書き込んだメモリ領域の物理アドレスと論理アドレスとを対応付けてアドレス変換テーブルを更新する処理を行うことを特徴とする請求項６記載のメモリカード。
【請求項８】
異なった消去単位とされる複数のメモリ領域に分割配置された消去テーブルは、異なった消去単位のメモリ領域上でそれぞれ多重化され、多重化された消去テーブルは交互に消去単位を変えるように順番に更新されて利用されることを特徴とする請求項７記載のメモリカード。
【請求項９】
前記アドレス変換テーブルは異なった消去単位とされる複数のメモリ領域に分割配置され、分割配置されたアドレス変換テーブルは、異なった消去単位のメモリ領域上でそれぞれ多重化され、多重化されたアドレス変換テーブルは交互に消去単位を変えるように順番に更新されて利用されることを特徴とする請求項８記載のメモリカード。
【請求項１０】
前記制御回路は、データ読み出しを行うメモリ領域を前記アドレス変換テーブルを参照して検索することを特徴とする請求項３記載のメモリカード。
【請求項１１】
前記不揮発性メモリの消去単位は外部から指示される書き込み単位よりも大きいことを特徴とする請求項３記載のメモリカード。
【請求項１２】
消去及び書き込み可能な不揮発性メモリと、制御回路とを有し、
前記不揮発性メモリのメモリアレイは、そのメモリ領域の物理アドレス毎に空き情報フラグを対応付けた消去テーブルと、論理アドレス毎にメモリ領域の物理アドレスを対応付けたアドレス変換テーブルとを有し、前記空き情報フラグは対応メモリ領域が消去許可か否かを示し、
前記制御回路は、記憶情報の書き換えを行うとき、書き換え対象の論理アドレスに対応するアドレス変換テーブルをバッファに読み込み、読み込んだアドレス変換テーブルから書き換えされるデータの物理アドレスを取得し、取得した物理アドレスのメモリ領域をリードしてリードデータをバッファにストアし、前記取得した物理アドレスに対応する第１消去テーブルをバッファに読み込み、書き換えデータを書き込むメモリ領域を検索するために用いる第２消去テーブルをバッファに読み込み、読み込んだ第２消去テーブルの空き情報フラグを参照して書き換えデータを書き込むメモリ領域を決定し、前記ストアしたデータに外部からの入力データを組合わせ、組み合わされたデータを書き換えデータとして前記決定されたメモリ領域に書き込み、データを書き込んだメモリ領域の物理アドレスと論理アドレスとの対応をバッファに読み込まれたアドレス変換テーブル上で更新し、バッファに読み込まれた消去テーブル上で空き情報フラグを更新し、更新した消去テーブルとアドレス変換テーブルをフラッシュメモリに書き込むことを特徴とするメモリカード。
【請求項１３】
更新した消去テーブルとアドレス変換テーブルをフラッシュメモリに書き込む処理は、第２消去テーブル、アドレス変換テーブル、第１消去テーブルの順番であることを特徴とする請求項１２記載のメモリカード。
【請求項１４】
前記消去テーブルは、異なった消去単位とされる複数のメモリ領域に分割配置され、異なった消去単位のメモリ領域上でそれぞれ多重化され、多重化された消去テーブルは交互に消去単位を変えるように順番に更新されて利用されることを特徴とする請求項１３記載のメモリカード。
【請求項１５】
前記アドレス変換テーブルは異なった消去単位とされる複数のメモリ領域に分割配置され、分割配置されたアドレス変換テーブルは、異なった消去単位のメモリ領域上でそれぞれ多重化され、多重化されたアドレス変換テーブルは交互に消去単位を変えるように順番に更新されて利用されることを特徴とする請求項１４記載のメモリカード。
【請求項１６】
消去及び書き込み可能な不揮発性メモリを有し、
前記不揮発性メモリは、そのメモリアレイの一部に、そのメモリ領域の物理アドレス毎に空き情報フラグを対応付けた消去テーブルと、論理アドレス毎にメモリ領域の物理アドレスを対応付けたアドレス変換テーブルとを有し、
前記空き情報フラグは対応メモリ領域が消去許可であることを示す第１状態又は消去不許可であることを示す第２状態を有し、検索された第１状態の空き情報フラグに応ずる物理アドレスが書き換えデータを書き込むメモリ領域を決定することを特徴とするメモリカード。
【請求項１７】
前記消去テーブルは、異なった消去単位とされる複数のメモリ領域に分割配置され、書き換えデータを書き込むメモリ領域を決定するのに参照される消去テーブルは、書き換えされるデータが保持されたメモリ領域に応ずる空き情報フラグを保有する消去テーブルに対し、異なった消去単位のメモリ領域に形成された消去テーブルとされ、
前記書き換えされるデータが保持されたメモリ領域は、アドレス変換テーブルが参照されて決定されることを特徴とする請求項１６記載のメモリカード。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、消去及び書き込み可能な不揮発性メモリ、例えばフラッシュメモリを有するメモリカードに関し、例えばメモリ領域の物理アドレスを論理アドレスに対応付けてダイナミックに配置する技術の改良に関する。
【０００２】
【従来の技術】
メモリカードに書き込みエラー等を生じたとき、そのエラーブロックを代替メモリブロックで置き換えることが行なわれる。そのような代替技術として、代替エリア管理テーブルを設け、セクタのようなメモリブロック単位のセクタ管理領域に設けられたセクタ有効性フラグが不良を示すとき、その代替エリア管理テーブルから代替セクタアドレスを取得する。代替セクタアドレスのセクタに対しても同じようにセクタ管理領域をリードしてその有効性を判定する。無効であれば、また同じように代替エリア管理テーブルから代替セクタアドレスを取得する。
【０００３】
特許文献１には、メモリカードに搭載されたフラッシュメモリに、ファイルデータを記憶するデータメモリ領域と、エラー領域を代替する代替メモリ領域、データメモリ領域のエラー情報を記憶するエラーメモリ領域を設け、エラーメモリ領域にはエラーとなったデータメモリの代替メモリのアドレスをエラー情報として格納する構成が記載される（図２参照）。
【０００４】
特許文献２には、データの書き込みは光ディスクと同様に記憶データと記憶場所には関連性を持たせず、データの書き込みがあったら、データを書き加えていくこととし、既に書き込んであるファイルの書き換えが発生した場合は、古いファイルの記憶領域は無効として消去可能領域とし、あるタイミングで無効領域のデータを消去するガーベージコレクションを行うことが記載される（第４段落及び第８段落参照）。この技術においてファイル管理には論理セクタテーブル、物理セクタテーブル、及びステータステーブルを用いる。論理セクタテーブルは論理セクタのデータがフラッシュメモリの何処にマッピングされているかを参照可能にする。物理セクタテーブルは物理セクタにマッピングされたファイルデータの論理セクタ番号を参照可能にする。ステータステーブルは各物理セクタのステータスを参照可能にする。例えば書き込みでは、次のデータの書き込みを行うセクタを示す書き込みポインタが設定されており、このポインタが示すセクタが書き込み可能な状態にあるかをステータステーブルにより判定する。ステータステーブルには消去回数が多くなって劣化したことを示すフラグやデータが既に書き込まれていることを示すフラグがあり、これが立っていて書き込み不可能であれば次のセクタにポインタを移す、という制御が行なわれるようになっている。
【０００５】
【特許文献１】
特開平５−２０４５６１号公報
【特許文献２】
特開平６−１２４５９６号公報
【０００６】
【発明が解決しようとする課題】
しかしながら、従来技術では書き込みや書き換えに際して代替領域を検索するには順次物理セクタの管理情報を読み出す処理を行い、或は前記エラーメモリ領域から代替メモリのアドレス等を読み出す処理を行わなければならない。記憶データと記憶場所には関連性を持たせないとする技術においても書き込みセクタを指定するポインタの値に追従してステータステーブルのステータス情報を順次読み込まなければならない。要するに、書き込みを行う空きセクタの検索には物理セクタから情報を順次読み出す処理が必要とされる。
【０００７】
また、本発明者の検討によれば、消去中に動作電源が遮断されると、その書き込みブロック例えばセクタのアドレス情報が消失したり、書き込み対象以外のデータが不所望に消失する虞のあることが明らかにされた。即ち、消去及び書き込み可能な不揮発性メモリ例えばフラッシュメモリはデータを書き込むとき消去を行ってからデータの書き込み処理を行う。消去及び書き込み処理単位である１ブロックにはユーザデータの他に当該ブロックが不良又は良の何れであるかを示すコードや、当該ブロックの論理アドレスなどの管理情報も含まれている。消去及び書き込み処理において処理対象ブロックの記憶情報はバッファに退避され、この状態で消去が行なわれ、その後、書き換えデータと共に管理情報が対応ブロックに順次書き込まれる。消去処理中に動作電源が遮断されればバッファ上から管理情報も失われ、そのブロックのアドレスが消失してしまう。また、１ブロックよりも小さなサイズのデータを書換える場合でも、消去及び書き込み処理単位との関係で当該ブロック上で書換えないデータを含めてそのブロックのデータを同じように退避してから、ブロック単位で消去を行い、その後、書換えるデータと退避してあった書き換えないデータを当該ブロックに書き込んでいく。この消去及び書き込み処理中に動作電源が遮断されると、上記同様にバッファ上の書換えないデータも消失し、書換え対象でないデータが不所望に消失してしまう。動作電源の遮断はメモリスロットからメモリカードが抜き取られ、或はカードホストのバッテリ電源遮断などにより生ずる。
【０００８】
本発明の目的は、正規のメモリ領域に対するアクセスの高速化を実現することができるメモリカードを提供することにある。
【０００９】
本発明の別の目的は、メモリセルの書換え回数の制限に対して寿命を延ばし、消去及び書き込み処理によるディスターブの影響を軽減することができるメモリカードを提供することにある。
【００１０】
本発明の別の目的は、消去及び書き込み処理中に動作電源が遮断されてもアドレスの消失や書き込み非対象の記憶情報が不所望に消失するのを防止することができるメモリカードを提供することにある。
【００１１】
本発明の前記並びにその他の目的と新規な特徴は本明細書の記述及び添付図面から明らかになるであろう。
【００１２】
【課題を解決するための手段】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば下記の通りである。
【００１３】
〔１〕メモリカードは消去及び書き込み可能な不揮発性メモリ（２）と、制御回路（５）とを有する。前記不揮発性メモリのメモリアレイは、そのメモリ領域の物理アドレス毎に空き情報フラグ（ＦＬＧ）を対応付けた消去テーブルを有し、前記空き情報フラグは対応メモリ領域が消去許可であることを示す第１状態又は消去不許可であることを示す第２状態を有する。前記制御回路は、書き換えデータを書き込むメモリ領域の検索に前記消去テーブルを参照する。したがって、データの書き換えに際して、前記消去テーブルを参照して第１状態の空き情報フラグを識別すれば、その第１状態の空き情報フラグに応ずる物理アドレスのメモリ領域を消去及び書き込み対象とすればよい。書き換え前のメモリ領域と同じメモリ領域で書き換えを行わないから、書き換えが行なわれても書換え前のメモリ領域には元の記憶情報が残っている。
【００１４】
〔２〕メモリカードは消去及び書き込み可能な不揮発性メモリと、制御回路とを有する。前記不揮発性メモリは、メモリアレイの一部に、そのメモリ領域の物理アドレス毎に空き情報フラグを対応付けた消去テーブルを有する。前記空き情報フラグは対応メモリ領域が消去許可であることを示す第１状態又は消去不許可であることを示す第２状態を有する。前記制御回路は、前記消去テーブルを検索して得られる第１状態の空き情報フラグに応ずる物理アドレスを、書き換えデータを書き込むメモリ領域とする。
【００１５】
〔３〕メモリカードは消去及び書き込み可能な不揮発性メモリと、制御回路とを有する。前記不揮発性メモリのメモリアレイは、そのメモリ領域の物理アドレス毎に空き情報フラグを対応付けた消去テーブルと、論理アドレス毎にメモリ領域の物理アドレスを対応付けたアドレス変換テーブルとを有し、前記空き情報フラグは対応メモリ領域が消去許可か否かを示す。前記制御回路は、前記消去テーブルの空き情報フラグを参照して書き換えデータを書き込むメモリ領域を決定し、データを書き込んだメモリ領域の物理アドレスと論理アドレスとを対応付けてアドレス変換テーブルを更新すると共に、消去テーブルの空き情報フラグを更新する。
【００１６】
これによれば、メモリ領域の物理アドレスと論理アドレスとの対応はアドレス変換テーブルにより直接変更可能であるから、エラーのあるメモリ領域を除外するようにアドレス変換テーブルを構成することにより、エラーによる代替関係を一々辿ることを要せず、アクセスの高速化が実現される。また、記憶情報の書き換えでは、書き換えデータを書き込むメモリ領域は前記消去テーブルの空き情報フラグを参照して決定し、書き換え前のメモリ領域と同じメモリ領域で書き換えを行わない。したがって、書き換えが行なわれても書換え前のメモリ領域には元の記憶情報が残っている。書き換えによって変化される物理アドレスと論理アドレスとの対応及びメモリエリアの空き状態は、書き換えが行なわれた後にアドレス変換テーブル及び消去テーブルに反映されるから、書き換え処理途中で電源遮断があっても、有意の記憶情報はアクセス可能な状態を維持して書き込み処理開始前の状態を保持することができる。
【００１７】
本発明の具体的な一つの形態として、前記消去テーブルは、異なった消去単位とされる複数のメモリ領域に分割配置され、書き換えデータを書き込むメモリ領域を決定するのに参照される消去テーブル（第１消去テーブル）は、乱数を使って選択する。これは、書換え処理が同じメモリ領域に集中しないようにするためである。
【００１８】
このとき、消去テーブルの空き情報フラグを更新する処理は、書き換えデータを書き込むメモリ領域を決定するのに参照される消去テーブルに対して書き換えデータの書き込みに決定されたメモリ領域に応ずる空き情報フラグを消去不許可とする第１更新処理と、前記書き換えされるデータが保持されたメモリ領域に応ずる空き情報フラグを保有する消去テーブルに対して当該空き情報フラグを消去許可とする第２更新処理とになる。これにより、第１及び第２消去テーブルの空き情報フラグは実際の状態に整合される。
【００１９】
特に、前記第１更新処理を行ってから第２更新処理を行うことが望ましい。前記第１処理と第２処理の間に、前記データを書き込んだメモリ領域の物理アドレスと論理アドレスとを対応付けてアドレス変換テーブルを更新する処理を行うことが望ましい。上記処理順は不所望な電源遮断によるデータ消失の防止を徹底させる意味と、記憶情報管理の論理整合を採り易くする意味がある。即ち、新ブロックアドレスのデータを消去不許可にして保護する処理（第２更新処理）を行った後に、旧ブロックアドレスに残っているデータを容易に取り出せなくする処理（アドレス変換テーブルの更新処理）、そして旧ブロックアドレスに残っているデータを消去許可とする処理（第１更新処理）を行う。仮に、先に第２更新処理を完了すると、新ブロックアドレスと旧ブロックアドレスの双方に対して消去を許容する状態が発生し、このまま電源の遮断が発生すれば、その後に前記双方に対する消去許容態が維持され、必要なデータが不所望に消去される虞を生ずる。
【００２０】
本発明の更に具体的な一つの形態として、異なった消去単位とされる複数のメモリ領域に分割配置された消去テーブルは、異なった消去単位のメモリ領域上でそれぞれ多重化され、多重化された消去テーブルは交互に消去単位を変えるように順番に更新されて利用されることが望ましい。この多重化により同じ不揮発性メモリセルが繰り返し書き換えに供される頻度を低減することができる。
【００２１】
同様に、前記アドレス変換テーブルも異なった消去単位とされる複数のメモリ領域に分割配置し、分割配置されたアドレス変換テーブルは、異なった消去単位のメモリ領域上でそれぞれ多重化され、多重化されたアドレス変換テーブルは交互に消去単位を変えるように順番に更新されて利用されることが望ましい。
【００２２】
本発明の更に具体的な一つの形態として、前記制御回路は、データ読み出しを行うメモリ領域を前記アドレス変換テーブルを参照して検索する。前記不揮発性メモリの消去単位は外部から指示される書き込み単位よりも大きい。
【００２３】
〔４〕本発明の別の観点によるメモリカードは、消去及び書き込み可能な不揮発性メモリと、制御回路とを有する。前記不揮発性メモリのメモリアレイは、そのメモリ領域の物理アドレス毎に空き情報フラグを対応付けた消去テーブルと、論理アドレス毎にメモリ領域の物理アドレスを対応付けたアドレス変換テーブルとを有し、前記空き情報フラグは対応メモリ領域が消去許可か否かを示す。前記制御回路は、記憶情報の書き換えを行うとき、書き換え対象の論理アドレスに対応するアドレス変換テーブルをバッファに読み込み、読み込んだアドレス変換テーブルから書き換えされるデータの物理アドレスを取得し、取得した物理アドレスのメモリ領域をリードしてリードデータをバッファにストアし、前記取得した物理アドレスに対応する第１消去テーブルをバッファに読み込み、書き換えデータを書き込むメモリ領域を検索するために用いる第２消去テーブルをバッファに読み込み、読み込んだ第２消去テーブルの空き情報フラグを参照して書き換えデータを書き込むメモリ領域を決定し、前記ストアしたデータに外部からの入力データを組合わせ、組み合わされたデータを書き換えデータとして前記決定されたメモリ領域に書き込み、データを書き込んだメモリ領域の物理アドレスと論理アドレスとの対応をバッファに読み込まれたアドレス変換テーブル上で更新し、バッファに読み込まれた消去テーブル上で空き情報フラグを更新し、更新した消去テーブルとアドレス変換テーブルをフラッシュメモリに書き込む。
【００２４】
更新した消去テーブルとアドレス変換テーブルをフラッシュメモリに書き込む処理は、第２消去テーブル、アドレス変換テーブル、第１消去テーブルの順番であることが望ましい。前記消去テーブルは、異なった消去単位とされる複数のメモリ領域に分割配置され、異なった消去単位とされる複数のメモリ領域に分割配置された消去テーブルは、異なった消去単位のメモリ領域上でそれぞれ多重化され、多重化された消去テーブルは交互に消去単位を変えるように順番に更新され利用されてよい。同様に前記アドレス変換テーブルも多重化されるのがよい。書き換えデータを書き込むメモリ領域を検索するために、乱数を用いて検索開始物理アドレスを決定し、決定した物理アドレスに対応した消去テーブルを第２消去テーブルとして用いる。
【００２５】
〔５〕本発明の別の観点によるメモリカードは、消去及び書き込み可能な不揮発性メモリを有し、前記不揮発性メモリは、そのメモリアレイの一部に、そのメモリ領域の物理アドレス毎に空き情報フラグを対応付けた消去テーブルと、論理アドレス毎にメモリ領域の物理アドレスを対応付けたアドレス変換テーブルとを有する。前記空き情報フラグは対応メモリ領域が消去許可であることを示す第１状態又は消去不許可であることを示す第２状態を有し、検索された第１状態の空き情報フラグに応ずる物理アドレスが書き換えデータを書き込むメモリ領域を決定する。
【００２６】
書き換えデータを書き込むメモリ領域を検索するために、乱数を用いて検索開始物理アドレスを決定し、決定した物理アドレスに対応した消去テーブルを第２消去テーブルとして用いる。前記書き換えされるデータが保持されたメモリ領域は、アドレス変換テーブルが参照されて決定されることになる。
【００２７】
【発明の実施の形態】
図１には本発明に係るメモリカードの一例が示される。メモリカード１は消去及び書き込み可能な不揮発性メモリ例えばフラッシュメモリ２と、ＤＲＡＭ（Ｄｙｎａｍｉｃ　Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　ｍｅｍｏｒｙ）又はＳＲＡＭ（Ｓｔａｔｉｃ　Ｒａｎｄｏｍ　Ａｃｃｅｓｓ　Ｍｅｍｏｒｙ）等から成るバッファメモリ４と、メモリ制御及び外部インタフェース制御を行うカードコントローラ５とを、実装基板に備えて成る。
【００２８】
前記バッファメモリ４及びフラッシュメモリ２はカードコントローラ５のアクセス制御を受ける。前記フラッシュメモリ２は、特に図示はしないが、電気的に消去及び書き込み可能な不揮発性メモリセルトランジスタが多数マトリクス配置されたメモリアレイＡＲＹを有する。メモリセルトランジスタ（フラッシュメモリセルとも記す）は、特に図示はしないが、半導体基板若しくはウェル内に形成されたソース及びドレイン、前記ソースとドレインとの間のチャンネル領域にトンネル酸化膜を介して形成されたフローティングゲート、そしてフローティングゲートに層間絶縁膜を介して重ねられたコントロールゲートによって構成される。コントロールゲートは対応するワード線に、ドレインは対応するビット線に、ソースはソース線に接続される。前記メモリセルトランジスタは、前記フローティングゲートに電子が注入されると閾値電圧が上昇し、また、前記フローティングゲートから電子を引き抜くと閾値電圧が低下する。前記メモリセルトランジスタは、データ読み出しのためのワード線電圧（コントロールゲート印加電圧）に対する閾値電圧の高低に応じた情報を記憶することになる。特に制限されないが、本明細書においてメモリセルトランジスタの閾値電圧が低い状態を消去状態、高い状態を書き込み状態と称する。
【００２９】
図１において、前記カードコントローラ５は、例えばホストコンピュータ（ホスト装置）６との間でＩＤＥディスクインタフェース仕様などに従った外部インタフェース制御を行う。カードコントローラ５は、ホストコンピュータ６からの指示に従って、フラッシュメモリ２をアクセスするアクセス制御機能を有する。このアクセス制御機能はハードディスク互換の制御機能であり、例えばホストコンピュータ６がセクタデータの集合をファイルデータとして管理するとき、カードコントローラ５は論理アドレスとしてのセクタアドレスと物理メモリアドレスとを対応させてフラッシュメモリ２のアクセス制御を行う。図１に従えば、前記カードコントローラ５は、ホストインタフェース回路１０、演算制御手段としてのマイクロプロセッサ（ＭＰＵ）１１、フラッシュコントローラ１２、及びバッファコントローラ１３から成る。前記フラッシュコントローラ１２は図示を省略するＥＣＣ回路を備える。
【００３０】
前記ＭＰＵ１１は、ＣＰＵ（Ｃｅｎｔｒａｌ　Ｐｒｏｃｅｓｓｉｎｇ　Ｕｎｉｔ）１５、プログラムメモリ（ＰＧＭ）１６及びワークＲＡＭ（ＷＲＡＭ）１７などを有し、カードコントローラ５を全体的に制御する。プログラムメモリ１６はＣＰＵ１５の動作プログラムなどを保有する。
【００３１】
前記ホストインタフェース回路１０は、ＡＴＡ（ＡＴＡｔｔａｃｈｍｅｎｔ）、ＩＤＥ（Ｉｎｔｅｇｒａｔｅｄ　Ｄｅｖｉｃｅ　Ｅｌｅｃｔｒｏｎｉｃｓ）、ＳＣＳＩ（Ｓｍａｌｌ　Ｃｏｍｐｕｔｅｒ　Ｓｙｓｔｅｍ　Ｉｎｔｅｒｆａｃｅ）、ＭＭＣ（ＭｕｌｔｉＭｅｄｉａＣａｒｄ）、ＰＣＭＣＩＡ（Ｐｅｒｓｏｎａｌ　Ｃｏｍｐｕｔｅｒ　Ｍｅｍｏｒｙ　Ｃａｒｄ　Ｉｎｔｅｒｎａｔｉｏｎａｌ　Ａｓｓｏｃｉａｔｉｏｎ）等の所定のプロトコルに従って、パーソナルコンピュータ又はワークステーションなどのホストコンピュータ６とインタフェースを行う回路である。ホストインタフェース動作の制御はＭＰＵ１１が行う。
【００３２】
前記バッファコントローラ１３はＭＰＵ１１から与えられるアクセス指示に従って、バッファメモリ４のメモリアクセス動作を制御する。バッファメモリ４にはホストインタフェース１０に入力されたデータ、又はホストインタフェース１０から出力するデータが一時的に保持される。また、バッファメモリ４には、フラッシュメモリ２から読み出されたデータ又はフラッシュッメモリ２に書き込まれるデータが一時的に保持される。
【００３３】
フラッシュコントローラ１２はＭＰＵ１１から与えられるアクセス指示に従って、フラッシュメモリ２に対する、読み出し動作、消去動作及び書き込み動作を制御する。フラッシュコントローラ１２は、読み出し動作において読み出しコマンドコードや読み出しアドレス情報等の読み出し制御情報を出力し、書き込み動作において書き込みコマンドコード及び書き込みアドレス情報などの書き込み制御情報を出力し、消去動作において消去コマンド等の消去制御情報を出力する。図示を省略するＥＣＣ回路は、ＭＰＵ１１から与えられる指示に従って、フラッシュメモリ２に書き込むデータに対してエラー訂正符号（エラー訂正コード）を生成して、書込みデータに付加する。また、フラッシュメモリ２から読み出された読み出しデータを当該読み出しデータに付加されているエラー訂正符号を用いてエラー検出・訂正処理を行い、そのエラー訂正能力範囲のエラー発生に対してエラー訂正を行う。
【００３４】
フラッシュメモリ２はそのメモリアレイＡＲＹの一部に消去テーブル２０及びアドレス変換テーブル２１を有する。
【００３５】
図２にはフラッシュメモリ２の記憶領域が例示される。フラッシュッメモリ２の記憶領域（メモリアレイＡＲＹ）は、前記消去テーブル２０、アドレス変換テーブル２１及びユーザエリア２２、消去テーブルとアドレス変換テーブルを更新するときに必要となる空きブロック領域２３に大別される。各領域はブロック（メモリセクタ）単位で物理アドレスとしてのブロックアドレスが与えられる。特に制限されないが１ブロックは約２ＫＢ（キロバイト）の記憶容量を有し、その１ブロックに含まれるメモリセルアレイは１本のワード線又は１種類のワード線選択信号で選択され、消去処理及び書き込み処理の単位とされる。即ち、ここでは消去処理や書き込み処理で必要な高電圧がワード線単位で印加される。この１ブロックはＨＤＤなどのストレージにおける書き換え単位とされるセクタ（ストレージセクタ）の容量５１２Ｂよりも大きい。例えば１ブロックは４ストレージセクタ分にＥＣＣコードを合わせた記憶容量を有する。
【００３６】
前記消去テーブル２０とアドレス変換テーブル２１のそれぞれは、２ブロック単位で分割配置され、各分割単位はその２ブロック内で多重化される。例えば消去テーブルはブロックアドレス０ｘ００００〜０ｘ０００Ｆに配置され、０ｘ００００と０ｘ０００１のように２ブロックを一単位として２ブロック毎に分割される。図２では消去テーブルブロック０−０と０−１には、分割された先頭の消去テーブルが多重化されて形成されている。アドレス変換テーブルはブロックアドレス０ｘ００１０〜０ｘ０１０Ｆに配置され、０ｘ００１０と０ｘ００１１のように２ブロックを一単位として２ブロック毎に分割される。図２ではアドレス変換テーブルブロック０−０と０−１には、分割された先頭のアドレス変換テーブルが多重化されて形成されている。
【００３７】
図３にはアドレス変換テーブルの一部、即ち分割された先頭のアドレス変換テーブルの詳細が例示される。ＡＴＴで示されるものが分割された一つのアドレス変換テーブルであり、図では“消去済”と記載された領域を併せて８重に多重化されている。多重化された８個のアドレス変換テーブルはその内の１個が順番に有効とされる。分割されたアドレス変換テーブルＡＴＴは、４個のストレージセクタに相当する論理アドレス毎に、対応するメモリセクタの物理アドレス即ち１個のブロックアドレスを対応付けるた情報を保有する。例えば、アドレス変換テーブルＡＴＴの先頭から順番に、論理アドレスＬＢＡ０〜３にはブロックアドレスＢＡｍが対応付けられ、論理アドレスＬＢＡ４〜７にはブロックアドレスＢＡｎが対応付けられる、と言うように、論理アドレスと物理アドレスとを対応付けた情報が格納される。アドレス変換テーブルにおける論理アドレス情報は例えば昇順で配置される。降順であってもよい。図３において、ブロックアドレスＢＡｍ，ＢＡｎ等のメモリブロックアドレスは、連続した論理アドレス４セクタに対応されるメモリブロックのアドレスを意味し、例えば１５ビットを有する。ここでは、メモリブロックのアドレス毎に１ビットのライトプロテクトビットＷＰが付加されている。ホストコンピュータ６からメモリカード１に対するアクセス指示にはアクセス対象セクタのアドレス（論理セクタアドレス又は論理アドレスとも称する）が指定されており、この論理セクタアドレスを検索キーとして、対応するブロックアドレスをアドレス変換テーブルを用いて検索する。
【００３８】
図４には消去テーブルの一部、即ち分割された先頭の消去テーブルの詳細が例示される。ＥＴで示されるものが分割された一つの消去テーブルであり、図では“消去済”と記載された領域を併せて８重に多重化されている。多重化された８個の消去テーブルＥＴはその内の１個が順番に有効とされる。分割された消去テーブルＥＴは、メモリ領域の物理アドレス即ちブロックアドレス毎に空き情報フラグ（単にフラグとも記す）が対応付けられている。要するに、消去テーブルＥＴの先頭から順番に１ビット単位で、先頭ブロック（ブロックアドレスＢＡ０−０）の空き情報フラグＦＬＧ、次ブロック（ブロックアドレスＢＡ０−１）の空き情報フラグＦＬＧというように、順次フラグのビットで埋められている。空き情報フラグＦＬＧは１ビットで対応ブロックの消去許可又は不許可を示す。“１”は消去許可、“０”は消去不許可を示す。消去テーブルにおける空き情報フラグＦＬＧの配列はブロックアドレス（物理アドレス）の昇順に従って配置される。降順であってもよい。
【００３９】
図５乃至図７には多重化された８個のテーブル（消去テーブルＥＴ、アドレス変換テーブルＡＴＴ）の内の１個を順番に有効とする制御手法が例示される。図５乃至図７において“テーブル”と記載された部分が有効とされるテーブルを意味する。有効なテーブルは、管理領域ＦＬＤａｄの更新フラグＦｒｎによって識別する。更新フラグＦｒｎは分割テーブルに対応させて各メモリブロックに４ビットあり、対応分割テーブルが有効にされたとき“１“にされ、消去されるまでその状態を維持する。２個のメモリブロックで多重化された分割テーブルは交互にメモリブロックを変えながら順次選択される。選択方向先頭で更新フラグＦｒｎが”１“と”０“の境界になっている地点が検索されることにより、当該”１“の更新フラグＦｒｎに対応する分割テーブルが有効になる。有効な分割テーブルの位置を変更するのはテーブル内容を更新するときに行う。８個のテーブルの初期状態は（Ａ）の状態である。（Ａ）の状態から（Ｂ）のテーブル更新を行うときは追加書込みによって更新を行う。（Ｂ）から（Ｈ）までの更新にも追加書き込みを使う。要するに、消去を行わず、新たにデータを追加する部分以外をマスクして（書込み非選択として）書込みを行う。（Ｈ）の状態からテーブルを更新するときには、空きブロック領域２３にあるブロックに書き換えを行い、テーブル０を新しく作成し、元のテーブル０は空きブロックとして再利用する。このときの状態が（Ｉ）である。（Ｉ）の状態からテーブルを更新するときは、空きブロック領域２３にあるブロックに書き換えを行い、テーブル１を新しく作成し、元のテーブル１は空きブロックとして再利用する。このときの状態が（Ｊ）である。（Ｊ）の状態は（Ｂ）の状態と同様であり、次に更新すると（Ｃ）の状態になる。この処理により、テーブル上の同じ不揮発性メモリセルが繰り返し書き換えに供される頻度を低減することができる。
【００４０】
図８には前記消去テーブル２０及びアドレス変換テーブル２１を利用したメモリカードのライトアクセス動作処理フローが例示される。ホストコンピュータ６からライトアクセスが有ると、カードコントローラ５は論理アドレスＬＢＡ（論理セクタアドレス）に対応するブロックアドレスが格納されているアドレス変換テーブルＡＴＴをバッファメモリ４のアドレス変換テーブルバッファにリードする（Ｓ１）。このときに、アドレス変換テーブル２１においてそれをインデックスする論理アドレス情報は昇順配置だから、先ずそれに従って、アドレス変換テーブルが配置される２個のメモリブロックを選べばよい。選んだ２個のメモリブロックに対し図５等に例示される管理領域ＦＬＤａｄを先ずリードして、多重化されている中から有効なアドレス変換テーブルＡＴＴの所在を把握し、これに基づいてアドレス変換テーブルＡＴＴをリードすることになる。そして、リードしたアドレス変換テーブルを検索することによりライト対象の論理アドレスに現在対応するブロックアドレス（旧ブロックアドレスと称する）ＯＢＡを取得する（Ｓ１）。
【００４１】
カードコントローラ５は、旧ブロックアドレスＯＢＡに格納されているデータのうちから書換えないデータを読み出してバッファメモリ４のデータバッファにリードし、ホストコンピュータ６からのライトデータと組合わせる（Ｓ２）。例えばライトデータが１ストレージセクタ分であるなら、旧ブロックアドレスＯＢＡからは３ストレージセクタ分のデータをリードし、合わせて４ストレージセクタ分のデータを書き換えデータとする。
【００４２】
次にカードコントローラ５は、旧ブロックアドレスＯＢＡに対応する消去テーブル（以下旧消去テーブルと称する）ＥＴをバッファメモリ４の旧消去テーブルバッファにリードする（Ｓ３）。リードすべき消去テーブルＥＴの選択は、分割された消去テーブル全体のテーブル内がブロックアドレスの昇順でインデックス可能になっているので、それに従って行えばよい。リードされる消去テーブルは分割配置された消去テーブルの一つである。ここでは、前述の通り、分割配置された一つの消去テーブルは多重化されており、前記更新フラグＦｒｎの状態を参照して多重化されている中の一つの分割消去テーブルをリードすることになる。次に、マイクロプロセッサがプログラムＲＯＭ１６内の擬似乱数発生プログラムを実行して、書込みデータの書込み先となるブロックアドレス（新ブロックアドレス）を取得するための検索開始ブロックアドレスを求める（Ｓ４）。カードコントローラ５は、このようにして得られた検索開始ブロックアドレスに対応した消去テーブル（新消去テーブルと記す）をバッファメモリにリードする（Ｓ５）。この場合も上記同様に、リードされる消去テーブルは分割配置された消去テーブルの一つである。また、前述の通り、分割配置された一つの消去テーブルは多重化されており、前記更新フラグＦｒｎの状態を参照して多重化されている中の一つの分割消去テーブルを新消去テーブルとしてリードすることになる。
【００４３】
そして、メモリコントローラ５はメモリバッファ４にリードした新消去テーブルから消去許可な新ブロックアドレス（ＮＢＡ）を検索する（Ｓ６）。即ち、メモリバッファ４にリードした新消去テーブルＥＴの疑似乱数発生プログラムを実行して取得した検索開始ブロックアドレスから昇順又は降順に空き情報フラグＦＬＧを調べ、例えば最初に検索した“１”の空き情報フラグＦＬＧの位置に応ずるブロックアドレスを新ブロックアドレスＮＢＡとする。新ブロックアドレスのメモリブロックに対して一括消去処理が行われる（Ｓ７）。その後、新ブロックアドレスのメモリブロックに対して、前記ステップＳ２で生成された書き換えデータによって書き込み処理を行う（Ｓ８）。書き込み処理に対して書き込み成功か否かが判定される（Ｓ９）。書き込み不成功であれば、そのときのバッファメモリ４にリードされている新消去テーブル上で、当該書き込みエラーに係る新ブロックアドレスに対応する空きフラグＦＬＧを消去不許可の状態“０”に変更し（Ｓ１０）、前記ステップＳ６に戻って、前記新消去テーブルから消去許可な別のブロックアドレスを検索して、途中から処理をやり直す。
【００４４】
ステップＳ９でライト成功と判別されたときは、先ず、バッファメモリ４にリードされている新消去テーブル上で、新ブロックアドレスに対応する空き情報フラグＦＬＧを消去不可に設定し（当該新ブロックアドレスを消去不許可に設定し）、変更した新消去テーブルのデータを書き換えデータとして、フラッシュメモリ２上の当該新消去テーブルのメモリブロックに書き込む（Ｓ１１）。次に、バッファメモリ４にリードされている前記アドレス変換テーブルＡＴＴ上で、今回のアクセス対象論理アドレスに対応するブロックアドレスを、旧ブロックアドレスＯＢＡから新ブロックアドレスＮＢＡに変更し、変更したアドレス変換テーブルのデータを書き換えデータとして、フラッシュメモリ２上の当該アドレス変換テーブルのメモリブロックに書き込む（Ｓ１２）。最後に、バッファメモリ４にリードされている旧消去テーブル上で、旧ブロックアドレスに対応する空き情報フラグＦＬＧを消去可に設定し（当該旧ブロックアドレスを消去許可に設定し）、変更した旧消去テーブルのデータを書き換えデータとして、フラッシュメモリ２上の当該旧消去テーブルのメモリブロックに書き込む（Ｓ１３）。
【００４５】
図９には図８で説明したステップＳ７までの主な処理内容が図式的に示される。図１０には図９の続きとして図８で説明したステップＳ８からＳ１３までの主な処理内容が図式的に示される。ここでは旧ブロックアドレスのブロックデータにセクタデータＳＤｈ，ＳＤｉ，ＳＤｊ，ＳＤｋが含まれ、その内のセクタデータＳＤｈがホストコンピュータ６からライトアクセスによりセクタデータＳＤｍに書き換えられるものとする。
【００４６】
図９及び図８におよっても明らかなように、ステップＳ７にて新ブロックアドレスのメモリブロックを消去し、ステップＳ８にて新ブロックアドレスのメモリブロックに書き換えデータＳＤｍ，ＳＤｉ，ＳＤｊ，ＳＤｋを書き込んでも（Ｓ８）、旧ブロックアドレスのメモリブロックには書き換え前のデータＳＤｈ，ＳＤｉ，ＳＤｊ，ＳＤｋがそのまま残っている。フラッシュメモリ２上では旧消去テーブル及びアドレス変換テーブルもそのままである。したがって、ステップＳ８の書き込みが完了する前にメモリカード１がカードスロットから引き抜かれたりして動作電源が遮断されても、前のデータはそのまま残る。書き換えデータが書き込まれるメモリブロックは、書き換えられる元のデータのメモリブロックとは相違されるからである。更にステップＳ８の書き換えデータの書き込みが終わった後、先ず、新ブロックアドレスを消去不許可に設定した新消去テーブルをフラッシュメモリ２に書き戻す（Ｓ１１）。書き戻しは多重化された別のメモリブロックに対して行われる。ステップＳ１１の処理完了により、新ブロックアドレスに書き込まれたデータの不所望な消去防止が保証される。次に旧ブロックアドレスが新ブロックアドレスに変更されたアドレス変換テーブルがフラッシュメモリ２に書き戻される（Ｓ１２）。これによって新ブロックアドレスへのアクセスが可能にされる。この書き戻しも多重化された別のメモリブロックに対して行われるから、ステップＳ１２の処理が完了される前に動作電源が遮断されても前の旧ブロックアドレスに関するアドレス変換テーブルはアクセス可能に残る。この段階では旧消去テーブルはそのまま残っている。旧ブロックアドレスのデータに対するアクセスの容易性が保証される。設定変更された旧消去テーブルの書き戻しは最後に行われ（Ｓ１３）、これが完了されることにより、旧ブロックアドレスのメモリブロックデータは消去許可になって、最早不要になる。電源遮断によってステップＳ１３の処理が中断しても、単に旧ブロックアドレスのメモリブロックが再利用不可能になるだけであり、必要なデータアクセスに支障は生じない。
【００４７】
上記より明らかなように前記ステップＳ１１，Ｓ１２，Ｓ１３の処理順は不所望な電源遮断によるデータ消失の防止を徹底させ、且つ記憶情報管理の論理整合を採り易くする意味において重要である。即ち、先ず、新ブロックアドレスのデータを消去不許可にして保護する処理（Ｓ１１）を行った後に、旧ブロックアドレスに残っているデータを容易に取り出せなくする処理（Ｓ１２）、そして旧ブロックアドレスに残っているデータを消去許可とする処理（Ｓ１３）を行う。例えばＳ１１の処理とＳ１３の処理の順番を入れ替えて、先にＳ１３の処理を完了すると、新ブロックアドレスと旧ブロックアドレスの双方に対して消去を許容する状態が発生し、このまま電源の遮断が発生すれば、その後に前記双方に対する消去許容態が維持され、必要なデータが不所望に消去される虞を生ずる。
【００４８】
さらに、メモリカードに搭載するフラッシュメモリを２以上とし又は１のフラッシュメモリ内でバンク分割を行い、消去テーブルの格納領域とアドレス変換テーブルの格納領域とを異なるフラッシュメモリ又は異なるバンクとする等により、カードコントローラ５からフラッシュメモリへ新消去テーブルの転送と新アドレス変換テーブルの転送とを行った後、新消去テーブルの書き込みと新アドレス変換テーブルの書き込みとを並行して行う（図８のＳ１１とＳ１２とをシーケンシャルに行うのではなく、パラレルに行う）ようにすることで、記憶情報管理の論理整合をより採り易くすることが可能となる。
【００４９】
図１１にはアドレス変換テーブル２１を利用したメモリカードのリードアクセス動作処理フローが例示される。ホストコンピュータ６からリードアクセスが有ると、カードコントローラ５は論理アドレスＬＢＡ（論理セクタアドレス）に対応するブロックアドレスが格納されているアドレス変換テーブルＡＴＴをバッファメモリ４のアドレス変換テーブルバッファにリードする（Ｓ２０）。このときに、アドレス変換テーブル２１においてそれをインデックスする論理アドレス情報は昇順配置だから、先ずそれに従って、アドレス変換テーブルが配置される２個のブロックを選べばよい。選んだ２個のブロックに対し図５等に例示される管理領域ＦＬＤａｄを先ずリードして、多重化されている中から有効なアドレス変換テーブルＡＴＴの所在を把握し、これに基づいてアドレス変換テーブルＡＴＴをリードすることになる。そして、リードしたアドレス変換テーブルを検索することによりリード対象の論理アドレスに現在対応するブロックアドレスＢＡを取得する（Ｓ２０）。
【００５０】
カードコントローラ５は、ブロックアドレスＢＡに格納されているデータをリードする（Ｓ２１）。リードデータに対してＥＣＣエラーの判定を行い（Ｓ２２）、エラーがあればＥＣＣ訂正処理を行い（Ｓ２３）、リードデータをホストコンピュータ６に向けて出力する。
【００５１】
図１２にはメモリカード１のパワーオン処理が例示される。メモリカード１に電源が投入されると、ＣＰＵ１５内のレジスタ初期化（Ｓ３０）と、ホストインタフェース回路１０，フラッシュコントローラ１２、及びバッファコントローラ１３に対するレジスタ初期化（Ｓ３１）を行う。そしてメモリカード１に実装されているフラッシュメモリ２を確認し（Ｓ３２）、フラッシュメモリ２からシステム情報をリードする（Ｓ３３）。次に、前記アドレス変換テーブルを検索し、テーブルのアドレスをワークＲＡＭ１７に格納する（Ｓ３４）。同様に前記消去テーブルを検索し、テーブルのアドレスをワークＲＡＭ１７に格納する（Ｓ３５）。ワークＲＡＭ１７に格納されるテーブルアドレスは分割されたそれぞれのテーブルのメモリブロックアドレスとされる。或いは消去テーブル全体における先頭ブロックアドレスと、アドレス変換テーブル全体における先頭ブロックアドレスであってもよい。図１３にはテーブルアドレスの格納処理の様子が例示される。ホストコンピュータ６からのリードアクセス及びライトアクセスに応答する前記処理においてテーブルアドレスをワークＲＡＭ１７から取得することで、テーブルをアクセスする処理の高速化に寄与する。
【００５２】
尚、ここで、メモリブロックの有効性に関する制御について説明する。最初の状態ではエラーを生ずる無効なメモリブロックを除外してアドレス変換テーブルが形成され、また、そのような無効なメモリブロックは消去テーブル上において空き情報フラグが消去不許可に設定される。これにより、無効なメモリブロックはリード及びライトの対象にされない。途中で回復不可能なエラーを検出したときは当該メモリブロックに対応してアドレス変換テーブル及び消去テーブルをその用に変更すればよい。これによって各メモリブロックがその有効性を示す有効ビットを積極的に持たなくてもよくなる。システムメンテナンス上有効ビットを持つことを妨げるものではない。
【００５３】
以上本発明者によってなされた発明を実施形態に基づいて具体的に説明したが、本発明はそれに限定されるものではなく、その要旨を逸脱しない範囲において種々変更可能であることは言うまでもない。
【００５４】
例えば、テーブルは必ずしも分割されていなくても、多重化されていなくてもよい。消去処理や書き込み処理は必ずしもワード線単位で無くてもよい。フラッシュメモリは１個のメモリセルで２値データを記憶する構成だけでなく、４値以上の多値情報を記憶する構成であってもよい。不揮発性メモリはフラッシュメモリに限定されず、高誘電体メモリなど、他の記憶形式のメモリであってよいことは言うまでもない。また、カードコントローラのような制御回路はＩＤＥなどのホストインタフェース回路を備えなくてもよく、その機能をホストコンピュータに負担させるように規格化されたメモリカードにも適用可能である。
【００５５】
【発明の効果】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば下記の通りである。
【００５６】
すなわち、アドレス変換テーブルを用いるので、正規のメモリ領域へのアクセスの高速化を実現することができる。
【００５７】
テーブルの分割化、多重化により、消去及び書き込み処理によるディスターブの影響を軽減することができる。
【００５８】
テーブルの分割化、多重化、書き換えメモリ領域のダイナミックな変更により、メモリセルの書換え回数の制限に対して寿命を延ばすことができる。
【００５９】
書き換えメモリ領域のダイナミックな変更により、動作電源の遮断によるアドレスの消失や書き込み非対象の記憶情報の不所望な消失を防止することができる。
【図面の簡単な説明】
【図１】本発明に係るメモリカードの一例を示すブロック図である。
【図２】フラッシュメモリ２の記憶領域を例示するアドレスマップである。
【図３】アドレス変換テーブルの一部即ち分割された先頭のアドレス変換テーブルの詳細を例示する説明図である。
【図４】消去テーブルの一部即ち分割された先頭の消去テーブルの詳細を例示する説明図である。
【図５】多重化された８個のテーブル（消去テーブルＥＴ、アドレス変換テーブルＡＴＴ）の内の１個を順番に有効とする制御手法を図６及び図７と共に例示する説明図である。
【図６】図５の続きの制御手法を示す説明図である。
【図７】図６の続きの制御手法を示する説明図である。
【図８】消去テーブル及びアドレス変換テーブルを利用したメモリカードのライトアクセス動作処理を例示するフローチャートである。
【図９】図８で説明したステップＳ７までの主な処理内容を図式的に示す説明図である。
【図１０】図９の続きとして図８で説明したステップＳ８からＳ１３までの主な処理内容が図式的に示す説明図である。
【図１１】アドレス変換テーブルを利用したメモリカードのリードアクセス動作処理を例示するフローチャートである。
【図１２】メモリカードのパワーオン処理を例示するフローチャートである。
【図１３】パワーオン処理におけるテーブルアドレスの格納処理の様子を例示する説明図である。
【符号の説明】
１　メモリカード
２　フラッシュッメオリ
４　バッファメモリ
５　カードコントローラ
６　ホストコンピュータ
１０　ホストインタフェース回路
１１　マイクロプロセッサ
１２　フラッシュコントローラ
１３　バッファコントローラ
１５　ＣＰＵ
１６　プログラムメモリ
１７　ワークＲＡＭ
ＡＲＹ　メモリアレイ
２０　消去テーブル
２１　アドレス変換テーブル
２２　ユーザエリア
ＦＬＧ　空き情報フラグ
ＢＡ０−０、ＢＡ０−１、ＢＡｉ、ＢＡｊ、ＢＡｍ、ＢＡｎ　ブロックアドレス
ＦＬＤａｄ　管理領域
ＥＴ　分割及び多重化された一つの消去テーブル
ＡＴＴ　分割及び多重化された一つのアドレス変換テーブル
【図１】
2004127185.tif 000003
【図２】
2004127185.tif 000004
【図３】
2004127185.tif 000005
【図４】
2004127185.tif 000006
【図５】
2004127185.tif 000007
【図６】
2004127185.tif 000008
【図７】
2004127185.tif 000009
【図８】
2004127185.tif 000010
【図９】
2004127185.tif 000011
【図１０】
2004127185.tif 000012
【図１１】
2004127185.tif 000013
【図１２】
2004127185.tif 000014
【図１３】
2004127185.tif 000015