(57)【要約】【課題】フラッシュメモリの寿命を拡大させるメモリシステムを提供する。【解決手段】ホストＨＳＴよりコントローラＣＴＬを介してフラッシュメモリＦＭに対して書き込み命令がなされた場合に、ＣＴＬは、当該書き込みデータをＲＡＭに格納し（Ｓ１０１）、当該書き込みデータがオールゼロ（ＡＬＬ  ００ｈ）か否かをオールゼロ判定部ＡＬＬ０Ｊを用いて判定する（Ｓ１０４）。当該書き込みデータがオールゼロであった場合、ＣＴＬは、当該書き込み命令に伴う論理アドレスに対応したＦＭのブロックに対して消去コマンドを発生する（Ｓ１０５）。これによって、オールゼロの書き込み命令がなされたＦＭのブロックを消去状態（オールイチ（ＡＬＬ  ＦＦｈ））に保てるため、このブロックを、不良ブロックの救済用や、オールゼロ以外の書き込み用で使用することができる。【選択図】図１
2009064238.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性メモリと、
ホストから命令を受けて前記不揮発性メモリを制御するコントローラとを備え、
前記コントローラは、前記ホストから第１論理アドレスに対して第１レベルのデータ群の書き込みを行う第１命令を受けた際に、前記不揮発性メモリの前記第１論理アドレスに対応する記憶領域が消去状態を保てるように制御を行うことを特徴とするメモリシステム。
【請求項２】
請求項１記載のメモリシステムにおいて、
前記不揮発性メモリは、セクタ単位またはページ単位あるいはブロック単位でアクセス可能なフラッシュメモリであることを特徴とするメモリシステム。
【請求項３】
請求項１または２記載のメモリシステムにおいて、
前記コントローラは、前記第１命令を受けた際に、前記不揮発性メモリの前記第１論理アドレスに対応する記憶領域に向けて消去コマンドを発生することを特徴とするメモリシステム。
【請求項４】
請求項１または２記載のメモリシステムにおいて、
前記第１レベルは、‘０’レベルであることを特徴とするメモリシステム。
【請求項５】
請求項１または２記載のメモリシステムにおいて、
前記コントローラは、
前記ホストからの書き込み命令に伴う書き込みデータを保持するＲＡＭと、
前記ＲＡＭに保持された書き込みデータに対してエラーコードを付加するエラーコード処理部と、
前記ＲＡＭに保持された書き込みデータが前記第１レベルのデータ群か否かを判定する第１レベル判定部とを備えることを特徴とするメモリシステム。
【請求項６】
請求項５記載のメモリシステムにおいて、
前記第１レベル判定部は、前記ＲＡＭから前記書き込みデータを分割して読み出し、この分割して読み出されたそれぞれのデータを全て加算することで前記第１レベルのデータ群か否かを判定することを特徴とするメモリシステム。
【請求項７】
請求項５記載のメモリシステムにおいて、
前記第１レベル判定部は、前記エラーコード処理部で付加されたエラーコードを参照することで前記第１レベルのデータ群か否かを判定することを特徴とするメモリシステム。
【請求項８】
請求項５記載のメモリシステムにおいて、
前記ＲＡＭは、更に、前記第１レベル判定部で前記第１レベルのデータ群と判定された前記第１論理アドレスの情報を管理する管理テーブルを備えることを特徴とするメモリシステム。
【請求項９】
請求項８記載のメモリシステムにおいて、
前記メモリシステムは、さらに、
前記ホストからの電源を蓄えるコンデンサと、
前記ホストからの電源が遮断された場合に、前記ホストと前記コンデンサとの接続を切り離す遮断検出切替部とを備え、
前記メモリシステムは、前記ホストからの電源が遮断された場合に、前記コンデンサに蓄えられた電源で動作し、前記管理テーブルを前記不揮発性メモリに退避することを特徴とするメモリシステム。
【請求項１０】
請求項１または２記載のメモリシステムにおいて、
前記コントローラは、さらに、前記ホストから第２論理アドレスに対して第２レベルのデータ群の書き込みを行う第２命令を受けた際に、前記不揮発性メモリの前記第２論理アドレスに対応する記憶領域が消去状態を保てるように制御を行うことを特徴とするメモリシステム。
【請求項１１】
不揮発性メモリと、
ホストから命令を受けて前記不揮発性メモリを制御するコントローラとを備え、
前記コントローラは、
前記ホストから第１論理アドレスに対して第１レベルのデータ群の書き込みを行う第１命令を受けた際に、前記不揮発性メモリの前記第１論理アドレスに対応する記憶領域が消去状態を保てるように制御を行う第１機能と、
前記ホストから前記第１論理アドレスに対する読み出し命令を受けた際に、前記ホストに対して前記第１レベルのデータ群を返信する第２機能とを有することを特徴とするメモリシステム。
【請求項１２】
請求項１１記載のメモリシステムにおいて、
前記不揮発性メモリは、セクタ単位またはページ単位あるいはブロック単位でアクセス可能なフラッシュメモリであることを特徴とするメモリシステム。
【請求項１３】
請求項１１または１２記載のメモリシステムにおいて、
前記第１レベルは、‘０’レベルであることを特徴とするメモリシステム。
【請求項１４】
請求項１１または１２記載のメモリシステムにおいて、
前記不揮発性メモリの特定の第１物理アドレスには、予め、前記第１レベルのデータ群と、前記第１レベルのデータ群に対して生成されたエラーコードとが格納され、
前記第２機能は、前記ホストから前記第１論理アドレスに対する読み出し命令を受けた際に、前記不揮発性メモリの前記第１物理アドレスを読み出し、前記エラーコードの確認を経て、前記第１物理アドレスから読み出した前記第１レベルのデータ群を前記ホストに向けて返信することを特徴とするメモリシステム。
【請求項１５】
請求項１１または１２記載のメモリシステムにおいて、
前記コントローラは、ＲＡＭを備え、
前記ＲＡＭの特定の第１アドレスには、予め、前記第１レベルのデータ群と、前記第１レベルのデータ群に対して生成されたエラーコードとが格納され、
前記第２機能は、前記ホストから前記第１論理アドレスに対する読み出し命令を受けた際に、前記ＲＡＭの前記第１アドレスを読み出し、前記エラーコードの確認を経て、前記第１アドレスから読み出した前記第１レベルのデータ群を前記ホストに向けて返信することを特徴とするメモリシステム。
【請求項１６】
請求項１１または１２記載のメモリシステムにおいて、
前記コントローラは、管理テーブルが格納されたＲＡＭを備え、
前記第１機能は、前記管理テーブルを用いて、前記第１命令を受けた前記第１論理アドレスの情報を管理し、
前記第２機能は、前記ホストから前記第１論理アドレスに対する読み出し命令を受けた際に、前記管理テーブルを参照することで前記第１レベルのデータ群を前記ホストに向けて返信することを特徴とするメモリシステム。
【請求項１７】
請求項１６記載のメモリシステムにおいて、
前記メモリシステムは、さらに、
前記ホストからの電源を蓄えるコンデンサと、
前記ホストからの電源が遮断された場合に、前記ホストと前記コンデンサとの接続を切り離す遮断検出切替部とを備え、
前記メモリシステムは、前記ホストからの電源が遮断された場合に、前記コンデンサに蓄えられた電源で動作し、前記管理テーブルを前記不揮発性メモリに退避することを特徴とするメモリシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリシステムに関し、特に、フラッシュメモリを含むストレージデバイスといったメモリシステムに適用して有効な技術に関するものである。
【背景技術】
【０００２】
例えば、非特許文献１には、ＡＴＡ／ＡＴＡＰＩのハードウェア構成や、コネクタピン配置、電気的特性などの物理仕様の概要が記載されている。非特許文献２には、ＰＣカードの規格の基本概要や、ピンアサインや基本的なアクセスタイミングなどの電気的規格が記載されている。また、スマートメディア（登録商標）に対するＥＣＣ（Error Correcting Code）の生成方法や、書き込みアルゴリズムなどが記載されている。非特許文献３には、ＳＣＳＩインタフェースに関する各種仕様が記載されている。
【０００３】
また、規格「ATA/ATAPI-4（NCITS 317-1998 ）」、「PC Card Standard Release7」、「SCSI I／F」、「ATA/ATAPI-7（ANSI INCITS 397-2005）」には、ＩＤＥインタフェース、ＰＣカードインタフェース、ＳＣＳＩインタフェースならびにシリアルＡＴＡインタフェースに関する各種規格が定義されている。
【非特許文献１】「ＡＴＡ（ＩＤＥ）／ＡＴＡＰＩの徹底研究」、ＣＱ出版社、ｐ．８−ｐ．２９
【非特許文献２】「ＰＣカード／メモリカードの徹底研究」、ＣＱ出版社、ｐ．８−ｐ．３９，ｐ．２００−ｐ．２１５
【非特許文献３】「最新ＳＣＳＩマニュアル」、ＣＱ出版社、ｐ．１４４−ｐ．１８１
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、前記のようなフラッシュメモリを含むメモリシステムの技術について、本発明者が検討した結果、以下のようなことが明らかとなった。
【０００５】
近年、ＮＡＮＤ型やＡＮＤ型といったフラッシュメモリは、ハードディスクの代替え手段として需要が拡大している。このようなフラッシュメモリは、例えばセクタ（５１２バイト）単位やページ（５１２バイトや２Ｋバイト等）単位、あるいは複数の連続セクタからなるブロック単位などでアクセス可能となっており、プロセッサ等を含む各種ホスト機器に接続して使用される。
【０００６】
図１５は、本発明の前提として検討したメモリシステムにおいて、それに含まれるフラッシュメモリの記憶状態の一例を示す説明図である。図１５に示すフラッシュメモリＦＭは、例えば、物理アドレス（ＰＡＤＤ）＃Ｎに該当するブロックＢＬＫｎに所定のデータ（ＤＡＴ＿Ａ）が書き込まれており、ＰＡＤＤ＃Ｌ〜＃Ｍに該当するブロックＢＬＫｌ〜ＢＬＫｍに全て‘０’となるデータ（ＡＬＬ  ００ｈ）が書き込まれている。また、ＰＡＤＤ＃Ｍ＋１〜＃Ｋに該当するブロックＢＬＫｍ１〜ＢＬＫｋは、消去状態であり、結果として全て‘１’となるデータ（ＡＬＬ  ＦＦｈ）が書き込まれている。ここで、「ｘｘｈ」は１６進数のバイト表示を意味するものである。
【０００７】
各ブロックＢＬＫｎ〜ＢＬＫｋの記憶領域内には、通常、データ記憶領域に加えて冗長記憶領域が備わっている。この冗長記憶領域には、自ブロックの有効／無効を示すステータス領域ＳＴＡ＿ＡＲや、自ブロックに割り当てられた論理アドレス（ＬＡＤＤ）を格納する論理アドレス領域ＬＡＤＤ＿ＡＲや、自ブロックのデータに対して生成したエラーコードを格納するエラーコード領域ＥＣＣ＿ＡＲなどが含まれている。エラーコードは、通常、ＥＣＣ（Error Correcting Code）が用いられる。
【０００８】
このようなフラッシュメモリＦＭは、例えば１０万回といった書き込み回数の制約が課せられている。したがって、メモリシステムは、ホストＨＳＴよりフラッシュメモリＦＭに対して書き込みを行う場合、フラッシュメモリの寿命を延ばすために、例えば書き込み回数を平均化する処理などを行う。図１５の例では、ホストＨＳＴが、例えばブロックＢＬＫｎの論理アドレス領域ＬＡＤＤ＿ＡＲ＿Ｎに格納されている論理アドレスに対して書き込みを行う場合、当該データをＢＬＫｎに書き込まずに、消去状態である例えばブロックＢＬＫｍ１に書き込む。そして、ＢＬＫｍ１の論理アドレス領域ＬＡＤＤ＿ＡＲ＿Ｍ１に当該論理アドレスを格納し、また、生成したエラーコードをエラーコード領域ＥＣＣ＿ＡＲ＿Ｍ１に格納する。その後、ホストＨＳＴは、元のブロックＢＬＫｎに対して消去を行う。このブロックＢＬＫｎは、その後の新たな書き込みで使用される。
【０００９】
このように、新たな書き込みを消去状態のブロック（未使用ブロック）に対して行うことで、特定のブロックに書き込みが集中することを避け、フラッシュメモリの寿命を延ばすことが可能となる。しかしながら、例えばパーソナルコンピュータシステムなどでは、ブロックＢＬＫｌ〜ＢＬＫｍに示すように、フォーマット時の空データなどの意味合いでＡＬＬ‘０’を書き込む場合があることが本発明者の検討によって見い出された。また、例えば、画像データや音声データなどにおいて、変化が無い部分に該当するデータがこのようなデータになることも想定し得る。
【００１０】
このようなＡＬＬ  ００ｈが書かれたブロックは、フラッシュメモリＦＭ内でその状態が長く継続する可能性が高く、これにより、フラッシュメモリの寿命が短くなってしまう。これは、前述したような書き込みブロックの入れ替えが、この「ＡＬＬ  ００ｈ」が書かれたブロックを除いたブロック間で行われることに起因する他、不良ブロックが発生した場合の対策となる予備ブロックの数が少なくなることにも起因する。不良ブロックが発生した場合は、例えば当該不良ブロックのステータス領域ＳＴＡ＿ＡＲで無効を定義し、その代わりに消去状態のブロックを新たに確保することで不良の救済が可能となる。
【００１１】
さらに、ブロックに「ＡＬＬ  ００ｈ」が書き込まれることで、処理速度の低下を招く恐れがある。すなわち、フレッシュメモリＦＭは、‘０’を書き込む際に多くの時間を要するため、「ＡＬＬ  ００ｈ」が書かれたブロックが多数におよぶと、その書き込み時間の影響が無視できないものとなる。
【００１２】
そこで、本発明の目的は、フラッシュメモリの寿命を拡大させるメモリシステムを提供することにある。また、本発明の他の目的は、ホストとフラッシュメモリ間の処理速度を向上させるメモリシステムを提供することにある。本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１３】
本願において開示される発明のうち代表的なものの概要を簡単に説明すれば、次の通りである。
【００１４】
本発明のメモリシステムは、不揮発性メモリ（フラッシュメモリ）と、ホストからの命令を受けてフラッシュメモリを制御するコントローラを含んだものとなっている。そして、コントローラは、ホストより第１論理アドレスに対する例えばオールゼロ（ＡＬＬ  ００ｈ）の書き込み命令を受けた際に、当該第１論理アドレスに対応するフラッシュメモリの記憶領域を消去状態（オールイチ（ＡＬＬ  ＦＦｈ））に保持する制御を行うものとなっている。
【００１５】
このように、第１論理アドレスに対応するフラッシュメモリの記憶領域を消去状態に保持することによって、この記憶領域を、不良となった記憶領域の救済用や、オールゼロ以外のデータの書き込み用として使用することができ、フラッシュメモリの寿命を拡大することが可能となる。さらに、オールゼロのデータをフラッシュメモリに書き込まないため、これに伴う書き込み時間を削減でき、ホストとフラッシュメモリ間の処理速度を向上させることが可能となる。
【００１６】
また、本発明のメモリシステムは、前述したような機能に加えて、更に、コントローラが、ホストから前述した第１論理アドレスに対する読み出し命令を受けた際に、ホストに対してオールゼロ（ＡＬＬ  ００ｈ）を返信する機能を備えるものとなっている。これによって、ホストに対して正しいデータを返信することが可能となる。
【発明の効果】
【００１７】
本願において開示される発明のうち代表的なものによって得られる効果を簡単に説明すれば、フラッシュメモリの寿命が拡大可能となる。また、ホストとフラッシュメモリ間の処理速度が向上可能となる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。また、以下の実施の形態においては便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明するが、特に明示した場合を除き、それらはお互いに無関係なものではなく、一方は他方の一部または全部の変形例、詳細、補足説明等の関係にある。
【００１９】
また、以下の実施の形態において、要素の数等（個数、数値、量、範囲等を含む）に言及する場合、特に明示した場合および原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でも良い。さらに、以下の実施の形態において、その構成要素（要素ステップ等も含む）は、特に明示した場合および原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではないことは言うまでもない。同様に、以下の実施の形態において、構成要素等の形状、位置関係等に言及するときは、特に明示した場合および原理的に明らかにそうでないと考えられる場合等を除き、実質的にその形状等に近似または類似するもの等を含むものとする。このことは、上記数値および範囲についても同様である。
【００２０】
（実施の形態１）
図１は、本発明の実施の形態１によるメモリシステムにおいて、その構成の一例を示すブロック図である。図１のメモリシステムは、ＮＡＮＤ型、ＡＮＤ型といったセクタ単位又はページ単位あるいはブロック単位でアクセス可能なフラッシュメモリ（不揮発性メモリ）ＦＭと、ホストＨＳＴからの命令を受けてフラッシュメモリＦＭを制御するコントローラＣＴＬによって構成される。コントローラＣＴＬは、例えば、コマンド制御や通信制御といったホストＨＳＴとフラッシュメモリＦＭ間の一般的なインタフェース部（図示せず）を含む他に、エラーコード処理部ＥＣＣＧと、揮発性メモリＲＡＭと、オールゼロ判定部ＡＬＬ０Ｊを備えている。
【００２１】
エラーコード処理部ＥＣＣＧは、フラッシュメモリＦＭへの書き込みデータやＦＭからの読み出しデータに対して例えばＥＣＣ（Error Correcting Code）といったエラーコードを生成する。書き込みデータに対して生成されたエラーコードは、図１５に示したように、書き込み対象ブロックＢＬＫのエラーコード領域ＥＣＣ＿ＡＲに書き込まれる。また、読み出しデータに対して生成されたエラーコードは、読み出し対象ブロックＢＬＫのエラーコード領域ＥＣＣ＿ＡＲから読み出されたエラーコードと比較判定され、その結果、エラー検出やエラー訂正が行われる。なお、エラーコード処理部ＥＣＣＧは、例えばハードウェア回路によって実装される。揮発性メモリＲＡＭは、例えばＳＲＡＭやＳＤＲＡＭ等であり、オールゼロ判定部ＡＬＬ０Ｊは、フラッシュメモリＦＭへの書き込みデータ（エラーコード等は除く）が全て‘０’であるか否かを判定する機能を備えている。
【００２２】
このような構成において、ホストＨＳＴが、フラッシュメモリＦＭに対してオールゼロ（ＡＬＬ  ００ｈ）の書き込み命令を発生すると、コントローラＣＴＬが、この書き込み命令、書き込みデータ、ならびに書き込み対象の論理アドレスＬＡＤＤなどを受けて、書き込みデータ（ＡＬＬ  ００ｈ）をＲＡＭに格納する（Ｓ１０１）。次いで、コントローラＣＴＬは、このＲＡＭに保存した書き込みデータをエラーコード処理部ＥＣＣＧに転送することで当該書き込みデータに対するエラーコードを生成し（Ｓ１０２）、このエラーコードをＲＡＭに格納する（Ｓ１０３）。
【００２３】
続いて、コントローラＣＴＬは、このＲＡＭに格納された書き込みデータならびにエラーコードの内の書き込みデータの部分をオールゼロ判定部ＡＬＬ０Ｊに転送する。オールゼロ判定部ＡＬＬ０Ｊは、例えば、各バイト毎の比較やデータ総和によって書き込みデータがオールゼロか否かを判定する（Ｓ１０４）。図１３は、図１におけるオールゼロ判定部の構成例を示す概略図であり、（ａ）は各バイト毎の比較を行う構成例、（ｂ）はデータ総和によって判定を行う構成例である。
【００２４】
図１３（ａ）の構成例では、ＲＡＭより、例えばバイト単位で書き込みデータの大きさに応じた回数分（Ｎ回）の読み出しを行い、その都度各バイト毎にオールゼロか否かの判定を行う。具体的には、例えば「００ｈ」を比較対象として判定を行ったり、８ビットのＯＲ演算を行うなどで判定が可能である。図１３（ｂ）の構成例では、ＲＡＭより、例えばバイト単位で書き込みデータの大きさに応じた回数分（Ｎ回）の読み出しを行い、その各バイトのデータを加算器ＡＤＤによって全て加算する。書き込みデータがオールゼロの場合にのみ加算結果がゼロとなるため、オールゼロ判定が可能である。なお、オールゼロ判定部ＡＬＬ０Ｊは、専用の回路を設ける他に例えばプロセッサを用いた演算処理などによっても実現可能である。
【００２５】
ここで、オールゼロ判定部ＡＬＬ０Ｊによって書き込みデータがオールゼロと判定された場合、コントローラＣＴＬは、当該書き込み命令を無効にし、フラッシュメモリＦＭの記憶状態を変えないように制御する。言い換えれば、書き込み対象ブロックＢＬＫが消去状態（オールイチ（ＡＬＬ  ＦＦｈ））を維持できるように制御する。ここでは、その一例として、フラッシュメモリＦＭの書き込み対象ブロックＢＬＫに対して消去コマンドを発生する（Ｓ１０５）。フラッシュメモリＦＭでは、消去状態のブロックＢＬＫに対して消去コマンドが入力された場合、通常は、何も行われない。
【００２６】
一方、例えば、ホストＨＳＴからの書き込みデータがオールゼロでなかった場合、オールゼロ判定部ＡＬＬ０Ｊによってオールゼロで無いと判定される。そして、これを受けてコントローラＣＴＬは、例えば、図１５で述べたようにフラッシュメモリＦＭの中から未使用ブロックＢＬＫを確保し、当該ブロックに対して当該書き込みデータを書き込むと共に、エラーコード領域ＥＣＣ＿ＡＲへのエラーコードの書き込みや、論理アドレス領域ＬＡＤＤ＿ＡＲへの論理アドレスの書き込みなども併せて行う。したがって、例えば、ホストＨＳＴよりオールイチ（ＡＬＬ  ＦＦｈ）の書き込み命令があったような場合は、エラーコードや論理アドレスの書き込みが行われるため消去状態とは区別される。
【００２７】
以上のように、本実施の形態１のメモリシステムを用いることで、ホストＨＳＴからのオールゼロの書き込み命令に対して、当該書き込み対象ブロックＢＬＫの消去状態を維持できるようになるため、当該書き込み対象ブロックＢＬＫを後のオールゼロ以外の書き込み時に使用することができる。また、当該書き込み対象ブロックＢＬＫを不良ブロックの救済用として使用することができる。したがって、フラッシュメモリＦＭの寿命を拡大することが可能となる。さらに、オールゼロの書き込みを行わずに済むため、この書き込みに要する時間を低減でき、ホストＨＳＴとフラッシュメモリＦＭ間の処理速度を向上させることが可能となる。
【００２８】
なお、ここでは、消去状態がオールイチ（ＡＬＬ  ＦＦｈ）のフラッシュメモリＦＭを用いる場合で説明を行ったが、消去状態がオールゼロ（ＡＬＬ  ００ｈ）であるフラッシュメモリを用いる場合は、オールゼロ判定部ＡＬＬ０Ｊを設ける代わりにオールイチ判定部を設けて、同様な動作を行えばよい。
【００２９】
（実施の形態２）
図２は、本発明の実施の形態２によるメモリシステムにおいて、その構成の一例を示すブロック図である。図２のメモリシステムは、図１のメモリシステムにおけるオールゼロ判定部ＡＬＬ０Ｊの代わりに、エラーコード（ここではＥＣＣ）を参照することで書き込みデータがオールゼロ（ＡＬＬ  ００ｈ）か否かの判定を行うＥＣＣ判定部ＥＣＣＪＧＥを備えた構成となっている。それ以外の構成については図１のメモリシステムと同様である。
【００３０】
ＥＣＣでは、例えば５１２バイトの書き込みデータに対して３２ビットのパリティビットを設けるなどでビットエラーの検出やエラー訂正を行っている。各パリティビットの値は、書き込みデータ内の所定のビットに対する排他的論理和（ＥＸＯＲ）の演算で算出されるが、書き込みデータがオールゼロ（ＡＬＬ  ００ｈ）の場合には各パリティビットの値が全て‘０’（反転論理を用いる場合は全て‘１’）となる。一方、書き込みデータの中に‘１’が含まれている場合は、各パリティビットのいずれかが必ず‘１’（反転論理を用いる場合は‘０’）となるため、これによってオールゼロ（ＡＬＬ  ００ｈ）であることを検出することが可能となる。なお、ＥＣＣによる判定ではオールゼロとオールイチの区別がつかないことも考えられるが、この場合は、実際の書き込みデータの一部を参照すればよい。
【００３１】
さらに排他的論理和（ＥＸＯＲ）を用いないＥＣＣ生成方法の場合でも、同様にオールゼロとオールイチのデータに対して固有のコードを作成する為、判断が可能である。
【００３２】
このようにＥＣＣによるオールゼロの判定を用いると、書き込みデータ自身を判定する場合に比べて判定対象となるビット数が少なくてよいため、回路規模、または判定速度の点で有益となる。なお、オールゼロの判定処理は、これを行わない従来技術のメモリシステムから見るとオーバーヘッドとなるため、可能な限り高速であることが望ましい。
【００３３】
（実施の形態３）
図３は、本発明の実施の形態３によるメモリシステムにおいて、その構成の一例を示すブロック図である。図３のメモリシステムは、図１や図２に示したメモリシステムにおける揮発性メモリＲＡＭをコントローラＣＴＬの外部に設けた構成となっている。ＲＡＭの記憶容量は、書き込み単位（セクタ、ページなど）や、例えば管理テーブル等を設ける場合にはそれに必要な容量などに応じて定められる。書き込み単位の大きさは、インタフェース規格に応じて様々であるため、これに応じて必要なＲＡＭの容量も異なることになる。したがって、ＲＡＭを外部に設けることで、コントローラ内にＲＡＭを内蔵または実装する場合と比較して、様々な規格に対して柔軟に対応することが可能となる。
【００３４】
（実施の形態４）
図４は、本発明の実施の形態４によるメモリシステムにおいて、その構成の一例を示すブロック図である。図４のメモリシステムは、図１のメモリシステムにおける揮発性メモリＲＡＭ内に管理テーブルＴＢを備えた構成となっている。それ以外の構成については図１のメモリシステムと同様である。図１４は、図４のメモリシステムにおける管理テーブルの構成例を示す概念図である。
【００３５】
管理テーブルＴＢは、物理ブロックの状態情報、及び論理アドレスＬＡＤＤを管理するものとなっている。図１４の管理テーブルＴＢの例では、例えば、各物理アドレスのイレース済（Ｅｒａｓｅフラグ）・正常性（不良フラグ）などの状態情報を管理している。また、別領域で各論理アドレスＬＡＤＤ毎に、それに割り当てられた物理アドレスＰＡＤＤや、各論理アドレスの使用状態（使用フラグ）などを管理している。ここでは、論理アドレスＬＡＤＤ＃Ａは未使用状態（使用フラグが‘０’）で、物理アドレスＰＡＤＤ＃Ｎが割り当てられ、論理アドレスＬＡＤＤ＃Ａ＋１は使用状態（使用フラグが‘１’）で、物理アドレスＰＡＤＤ＃Ｎ＋１が割り当てられている。同様に論理アドレスＬＡＤＤ＃Ａ＋２は使用状態で、物理アドレスＰＡＤＤ＃Ｎ＋３が割り当てられている状態を示している。
【００３６】
このような構成において、ホストＨＳＴよりオールゼロ（ＡＬＬ  ００ｈ）の書き込み命令が生じた場合、図１のＳ１０１〜Ｓ１０４と同様にして、ＲＡＭへの格納やエラーコードの生成ならびにオールゼロの判定が行われる（Ｓ４０１〜Ｓ４０４）。ここで、オールゼロ判定を行う判定部（ＡＬＬ０Ｊ／ＥＣＣＪＧＥ）によって書き込みデータがオールゼロであると判定された場合、コントローラＣＴＬは、当該書き込みデータに伴う論理アドレスＬＡＤＤの使用フラグを未使用状態として管理テーブルＴＢに登録する（Ｓ４０５）。
【００３７】
これによって、コントローラＣＴＬは、当該論理アドレスＬＡＤＤの書き込みデータがオールゼロ（ＡＬＬ  ００ｈ）であると認識しながら、実際には物理アドレスを割り当てずに、本来割り当てる筈の物理アドレスをその他の書き込み並びに不良の救済に用いることが可能となる。また、ここで、本来割り当てる筈の物理アドレスに対して消去コマンドを発生し（Ｓ４０６）、当該ブロックの消去完了を確認した上で管理テーブルＴＢを更新すると、より確実に消去状態を維持できる。なお、後に、当該論理アドレスＬＡＤＤに対してオールゼロ以外の書き込み命令が生じた場合には、管理テーブルＴＢにおいて当該論理アドレスＬＡＤＤに物理アドレスＰＡＤＤを割り当て、使用フラグを使用状態とすればよい。
【００３８】
（実施の形態５）
図５は、本発明の実施の形態５によるメモリシステムにおいて、その構成の一例を示すブロック図である。図５に示すメモリシステムは、例えば図４のメモリシステムにおけるＲＡＭをコントローラＣＴＬの外部に設けた構成に対して、遮断検出切替回路ＤＥＴと、電力保持用のコンデンサＣ１を加えた構成となっている。それ以外の構成については、図４と同様である。
【００３９】
図５のメモリシステムでは、ホストＨＳＴからの電源が遮断検出切替回路ＤＥＴを介してコンデンサＣ１に蓄えられ、更にこのコンデンサＣ１の電力をＲＡＭ、コントローラＣＴＬおよびフラッシュメモリＦＭで使用可能な構成となっている。すなわち、ホストＨＳＴからの電源供給を受けてＲＡＭ、ＣＴＬおよびＦＭが動作する構成となっている。
【００４０】
このような構成において、ホストＨＳＴからの電源供給が遮断された場合、遮断検出切替回路ＤＥＴは、この電源遮断を検出し、コンデンサＣ１に蓄えられた電力がホストＨＳＴ側にリークしないようにスイッチ等によってホストＨＳＴからの電源供給経路とコンデンサＣ１とを切り離す。この際に、遮断検出切替回路ＤＥＴは、コントローラＣＴＬに向けて検出信号ＳＰを送信する。以降、コントローラＣＴＬ、ＲＡＭ、およびフラッシュメモリＦＭは、このコンデンサＣ１の電力で動作し、コントローラＣＴＬは、この検出信号ＳＰを受けてＲＡＭ内の管理テーブルＴＢを読み出し、これをフラッシュメモリＦＭの所定の物理アドレスへ退避する（Ｓ５０７）。なお、以降にホストＨＳＴからの電源供給が行われた際、コントローラＣＴＬは、フラッシュメモリＦＭに保存した管理テーブルＴＢを再びＲＡＭ上に展開して使用する。
【００４１】
このように、電源遮断の際に管理テーブルＴＢをフラッシュメモリＦＭへ退避することで、ひとたび電源遮断が行われそれが復帰した以降においても、コントローラに、特定の論理アドレスのデータがオールゼロであることを認識させることができる。これによって、信頼性が高いメモリシステムが実現可能となる。
【００４２】
（実施の形態６）
本実施の形態６のメモリシステムは、実施の形態１〜５で述べたように、オールゼロ（ＡＬＬ  ００ｈ）の書き込み命令に対してフラッシュメモリの当該書き込み対象箇所の消去状態を維持するようなメモリシステムに適用される。図６は、本発明の実施の形態６によるメモリシステムにおいて、その構成の一例を示すブロック図である。
【００４３】
図６に示すメモリシステムは、図１等のメモリシステムと同様に、ホストＨＳＴからの命令を受けるコントローラＣＴＬと、フラッシュメモリＦＭで構成され、ＣＴＬが、アドレス制御部ＡＤＣＴＬａと、消去判定部ＥＳＪと、オールゼロ生成部ＡＬＬ０Ｇを備えた構成となっている。アドレス制御部ＡＤＣＴＬａは、ホストＨＳＴとの間の論理アドレスＬＡＤＤとフラッシュメモリＦＭとの間の物理アドレスＰＡＤＤとの変換などを行う。
【００４４】
変換方法としては、図１５で挙げているように、フラッシュメモリＦＭの例えばＢＬＫｎの冗長記憶領域に記載されている割り当てられている論理アドレスＬＡＤＤ＿ＡＲ＿Ｎをサーチして確認する方法などが考えられる。消去判定部ＥＳＪは、フラッシュメモリＦＭから読み出されたデータが消去状態か否かを判定する。オールゼロ生成部ＡＬＬ０Ｇは、フラッシュメモリＦＭの読み出し単位（セクタ単位、ページ単位、ブロック単位等）に該当する大きさのオールゼロ（ＡＬＬ  ００ｈ）データを生成する。
【００４５】
図１等で述べたように、本実施の形態のメモリシステムは、オールゼロの書き込み対象となるブロックＢＬＫが消去状態（すなわちＡＬＬ  ＦＦｈ）を維持するものとなっている。一方、コントローラＣＴＬは、ホストＨＳＴからこのオールゼロを書き込んだ論理アドレスＬＡＤＤを対象とする読み出し命令（Ｒｅａｄ）を受けた際には、ホストＨＳＴに対してはオールゼロを返信する必要がある。
【００４６】
そこで、図６の構成例では、コントローラＣＴＬが、ホストＨＳＴより論理アドレスＬＡＤＤと共に読み出し命令を受けた際には（Ｓ６０１）、アドレス制御部ＡＤＣＴＬａを用いてこの論理アドレスＬＡＤＤを物理アドレスＰＡＤＤに変換し、フラッシュメモリＦＭの当該物理アドレスＰＡＤＤを読み出しにいく（Ｓ６０２）。ここで、この論理アドレスＬＡＤＤが、以前にオールゼロの書き込み命令を発生した論理アドレスである場合、当該論理アドレスに対応する物理アドレス上のデータは消去状態となっている筈である。したがって、フラッシュメモリＦＭからはオールイチ（ＡＬＬ  ＦＦｈ）が読み出される（Ｓ６０３）。
【００４７】
消去判定部ＥＳＪは、このフラッシュメモリＦＭから読み出されたデータを参照し、それが消去状態であると判定した場合、オールゼロ生成部ＡＬＬ０Ｇに通知する（Ｓ６０４）。オールゼロ生成部ＡＬＬ０Ｇは、この通知を受け、オールゼロ（ＡＬＬ  ００ｈ）のデータを生成してホストＨＳＴに向けて返信を行う（Ｓ６０５）。これによって、ホストＨＳＴに対して正しいデータを返信することが可能となる。
【００４８】
（実施の形態７）
本実施の形態７のメモリシステムは、実施の形態１〜５で述べたように、オールゼロ（ＡＬＬ  ００ｈ）の書き込み命令に対してフラッシュメモリの当該書き込み対象箇所の消去状態を維持するようなメモリシステムに適用される。図７は、本発明の実施の形態７によるメモリシステムにおいて、その構成の一例を示すブロック図である。
【００４９】
図７に示すメモリシステムは、図６のメモリシステムと同様に、ホストＨＳＴからの命令を受けるコントローラＣＴＬと、フラッシュメモリＦＭで構成される。そして、コントローラＣＴＬが、図６と同様のアドレス制御部ＡＤＣＴＬａと、消去判定部ＥＳＪと、図１等で述べたエラーコード処理部ＥＣＣＧを備え、更に、フラッシュメモリＦＭ内の特定の物理アドレスに、オールゼロ（ＡＬＬ  ００ｈ）のデータとこのオールゼロのデータに対して生成されるエラーコード（ＥＣＣ）が格納されていることが特徴となっている。
【００５０】
このような構成において、コントローラＣＴＬが、ホストＨＳＴから以前にオールゼロの書き込み命令がなされた論理アドレスを対象とする読み出し命令を受けた場合（Ｓ７０１）、図６の場合と同様にアドレス制御部ＡＤＣＴＬａを介して対応する物理アドレスの読み出しを行う（Ｓ７０２，Ｓ７０３）。そして、消去判定部ＥＳＪが、この読み出しデータを受け、読み出しデータがオールイチ（ＡＬＬ  ＦＦｈ）（すなわち消去状態）と判定した場合、コントローラＣＴＬが、予め定めてある特定の物理アドレスに対して読み出しを行う（Ｓ７０４）。
【００５１】
この特定の物理アドレスには、予めオールゼロ（ＡＬＬ  ００ｈ）＋エラーコード（ＥＣＣ）が格納されており、コントローラＣＴＬは、この読み出しデータをエラーコード処理部ＥＣＣＧに転送する（Ｓ７０５）。そして、コントローラＣＴＬは、エラーコード処理部ＥＣＣＧによるエラー検出またはエラー訂正を経て、オールゼロ（ＡＬＬ  ００ｈ）データをホストＨＳＴに向けて返信する（Ｓ７０６）。
【００５２】
これによって、ホストＨＳＴに対して正しいデータを返信することが可能となる。また、エラーコード処理部ＥＣＣＧによるエラー検出またはエラー訂正を介して返信を行うため、ホストＨＳＴに向けた返信データの信頼性が向上する。さらに、フラッシュメモリＦＭ内の特定の箇所に予めＡＬＬ  ００ｈ＋ＥＣＣを格納しておくことで、図６のようにコントローラＣＴＬ内でオールゼロのデータを生成する必要がないため、コントローラＣＴＬの回路規模を低減でき、また、コントローラＣＴＬは通常の読み出し動作と同様の処理を行えばよいため、その処理が簡素化される。すなわち、オールゼロデータと共に当該データに対応するエラーコードが格納されているため、通常の読み出し動作と同様にエラーコード処理部ＥＣＣＧを介した処理を行っても不都合は生じない。
【００５３】
（実施の形態８）
本実施の形態８のメモリシステムは、実施の形態１〜５で述べたように、オールゼロ（ＡＬＬ  ００ｈ）の書き込み命令に対してフラッシュメモリの当該書き込み対象箇所の消去状態を維持するようなメモリシステムに適用される。図８は、本発明の実施の形態８によるメモリシステムにおいて、その構成の一例を示すブロック図である。前述した図７のメモリシステムでは、フラッシュメモリＦＭ内に「オールゼロ（ＡＬＬ  ００ｈ）＋エラーコード（ＥＣＣ）」の格納領域を設けたが、図８のメモリシステムでは、その代わりにコントローラＣＴＬのＲＡＭ内に当該領域を備えた構成となっている。それ以外の構成に関しては図７と同様である。
【００５４】
すなわち、図８のメモリシステムでは、図７と同様に消去判定部ＥＳＪによって読み出し対象ブロックが消去状態と判定されると、コントローラＣＴＬは、ＲＡＭ内の特定のアドレスに格納された「オールゼロ（ＡＬＬ  ００ｈ）＋エラーコード（ＥＣＣ）」のデータを読み出す（Ｓ８０４）。そして、この読み出しデータは、図７の場合と同様にエラーコード処理部ＥＣＣＧに転送され（Ｓ８０５）、エラー検出およびエラー訂正が行われた後に、オールゼロ（ＡＬＬ  ００ｈ）のデータがホストＨＳＴに向けて返信される（Ｓ８０６）。
【００５５】
このように、ＲＡＭ内に「オールゼロ（ＡＬＬ  ００ｈ）＋エラーコード（ＥＣＣ）」のデータを設けることで、図７のようにフラッシュメモリＦＭに対してアクセスを行う必要が無くなるため、ホストＨＳＴとの間の読み出し処理を高速化することが可能となる。
【００５６】
（実施の形態９）
本実施の形態９のメモリシステムは、実施の形態１〜５で述べたように、オールゼロ（ＡＬＬ  ００ｈ）の書き込み命令に対してフラッシュメモリの当該書き込み対象箇所の消去状態を維持するようなメモリシステムに適用される。図９は、本発明の実施の形態９によるメモリシステムにおいて、その構成の一例を示すブロック図である。
【００５７】
図９に示すメモリシステムは、図１等のメモリシステムと同様に、ホストＨＳＴからの命令を受けるコントローラＣＴＬと、フラッシュメモリＦＭで構成される。コントローラＣＴＬは、アドレス制御部ＡＤＣＴＬｂと、図１と同様のエラーコード処理部ＥＣＣＧと、ＲＡＭを含み、ＲＡＭ内には図４で説明したような管理テーブルＴＢが格納されている。また、フラッシュメモリＦＭ内には、特定の物理アドレスに、オールゼロ（ＡＬＬ  ００ｈ）のデータとこのオールゼロのデータに対して生成されるエラーコード（ＥＣＣ）が格納されている。
【００５８】
このような構成において、コントローラＣＴＬがホストＨＳＴから読み出し命令を受けた場合（Ｓ９０１）、アドレス制御部ＡＤＣＴＬｂが、ＲＡＭ内の管理テーブルＴＢを参照して、当該読み出し命令に伴う論理アドレスＬＡＤＤが以前にオールゼロ書き込み命令がなされたアドレスか否かを判定する（Ｓ９０２）。例えば、図１４のような管理テーブルＴＢであった場合は、当該論理アドレスＬＡＤＤが＃Ａであった場合にオールゼロ書き込み命令がなされたアドレスとなる。この場合、コントローラＣＴＬは、予め定めてある特定の物理アドレスに対して読み出し命令を発生する（Ｓ９０３）。
【００５９】
この特定の物理アドレスには、予めオールゼロ（ＡＬＬ  ００ｈ）＋エラーコード（ＥＣＣ）が格納されており、コントローラＣＴＬは、この読み出したデータをエラーコード処理部ＥＣＣＧに転送する（Ｓ９０４）。そして、コントローラＣＴＬは、エラーコード処理部ＥＣＣＧによるエラー検出またはエラー訂正を経て、オールゼロデータ（ＡＬＬ  ００ｈ）をホストＨＳＴに向けて返信する（Ｓ９０５）。
【００６０】
これによって、ホストＨＳＴに対して正しいデータを返信することが可能となる。また、図６等の構成例のように、オールゼロ書き込み命令がなされたアドレスか否かをフラッシュメモリＦＭを読み出すことで判定する必要がなく、コントローラＣＴＬ自身で判定可能となるため、判定処理の容易化または高速化が可能となる。さらに、フラッシュメモリＦＭ内の特定の箇所に予めＡＬＬ  ００ｈ＋ＥＣＣを格納しておくことで、図７の場合と同様に、信頼性の向上や、コントローラＣＴＬの回路規模の低減、あるいは読み出し動作に伴う処理の簡素化などが実現可能となる。
【００６１】
（実施の形態１０）
本実施の形態１０のメモリシステムは、実施の形態１〜５で述べたように、オールゼロ（ＡＬＬ  ００ｈ）の書き込み命令に対してフラッシュメモリの当該書き込み対象箇所の消去状態を維持するようなメモリシステムに適用される。図１０は、本発明の実施の形態１０によるメモリシステムにおいて、その構成の一例を示すブロック図である。
【００６２】
図１０に示すメモリシステムは、図９のメモリシステムと同様にＲＡＭ内の管理テーブルＴＢによって読み出し命令を管理するとともに、コントローラＣＴＬ内に図６と同様のオールゼロ生成部ＡＬＬ０Ｇを備えることでホストＨＳＴに対して返信を行う構成となっている。すなわち、管理テーブルＴＢによって読み出し対象の論理アドレスが以前にオールゼロ書き込み命令がなされたアドレスであると判定された場合、コントローラＣＴＬは、オールゼロ生成部ＡＬＬ０Ｇを制御することでオールゼロ（ＡＬＬ  ００ｈ）のデータをホストＨＳＴに対して返信する。
【００６３】
これによって、ホストＨＳＴに対して正しいデータを返信することが可能となる。また、フラッシュメモリＦＭに対してアクセスを行わずに、コントローラＣＴＬ内のみで処理を完結することができるため、読み出し処理の高速化が図れる。
【００６４】
（実施の形態１１）
本実施の形態１１のメモリシステムは、実施の形態１〜５で述べたように、オールゼロ（ＡＬＬ  ００ｈ）の書き込み命令に対してフラッシュメモリの当該書き込み対象箇所の消去状態を維持するようなメモリシステムに適用される。図１１は、本発明の実施の形態１１によるメモリシステムにおいて、その構成の一例を示すブロック図である。
【００６５】
図１１に示すメモリシステムは、図９のメモリシステムにおける管理テーブルＴＢが格納されたＲＡＭをコントローラＣＴＬの外部に設け、また、このＲＡＭ内に「オールゼロ（ＡＬＬ  ００ｈ）＋エラーコード（ＥＣＣ）」のデータが格納された構成となっている。さらに、図１１に示すメモリシステムは、これらに加えて、図５と同様の遮断検出切替回路ＤＥＴおよびコンデンサＣ１を備えた構成となっている。
【００６６】
読み出し時の動作に関しては、図９の場合とほぼ同様であり、管理テーブルＴＢによって読み出し対象の論理アドレスがオールゼロ書き込み履歴が有ると判定された場合に、コントローラＣＴＬは、図９のようなフラッシュメモリＦＭからではなく、ＲＡＭからエラーコード処理部ＥＣＣＧに向けて「ＡＬＬ  ００ｈ＋ＥＣＣ」のデータを転送する。また、ホストＨＳＴからの電源供給が遮断された場合に関しては、図５の場合と同様であり、コンデンサＣ１に蓄えられた電力によって管理テーブルＴＢをフラッシュメモリＦＭの特定の物理アドレスに退避する。
【００６７】
これによって、ホストＨＳＴに対して正しいデータを返信することが可能となる。また、ＲＡＭから「オールゼロ（ＡＬＬ  ００ｈ）＋エラーコード（ＥＣＣ）」のデータを読み出すため、読み出し処理の高速化が図れる。さらに、図５の場合と同様に、電源遮断が行われた際にも信頼性が高いメモリシステムを実現可能となる。
【００６８】
（実施の形態１２）
図１２は、本発明の実施の形態１２によるメモリシステムにおいて、その構成の一例を示すブロック図である。図１２のメモリシステムは、図１のメモリシステムにおけるオールゼロ判定部ＡＬＬ０Ｊの代わりに、オールゼロ（ＡＬＬ  ００ｈ）およびオールイチ（ＡＬＬ  ＦＦｈ）の判定を行うオールゼロイチ判定部ＡＬＬ０１Ｊを設けた構成となっている。それ以外の構成については図１のメモリシステムと同様である。
【００６９】
実施の形態１で述べたように、ホストＨＳＴよりオールイチ（ＡＬＬ  ＦＦｈ）の書き込み命令があった場合、当該書き込み対象ブロックは、消去状態を維持できなくなる。しかしながら、オールイチ（ＡＬＬ  ＦＦｈ）の書き込みは、前述したオールゼロの場合と同様に特に意味が無い書き込みである可能性が高い。そこで、オールゼロの場合に加えてオールイチの場合も、当該書き込み対象ブロックの消去状態が維持できるように制御することで、フラッシュメモリの寿命を更に拡大させることが可能となる。
【００７０】
以上、本発明者よりなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることは言うまでもない。
【産業上の利用可能性】
【００７１】
本発明のメモリシステムは、ＮＡＮＤ型またはＡＮＤ型といったフラッシュメモリを含むＰＣカードなどのストレージデバイスに適用して特に有益な技術であり、これに限らず、ＣＦ（CompactFlash（登録商標））カード、ＳＤカード、スマートメディア（登録商標）、メモリスティック（MEMORY STICK（登録商標））を代表とする各種メモリカードなどを含めて幅広く適用可能である。
【図面の簡単な説明】
【００７２】
【図１】本発明の実施の形態１によるメモリシステムにおいて、その構成の一例を示すブロック図である。
【図２】本発明の実施の形態２によるメモリシステムにおいて、その構成の一例を示すブロック図である。
【図３】本発明の実施の形態３によるメモリシステムにおいて、その構成の一例を示すブロック図である。
【図４】本発明の実施の形態４によるメモリシステムにおいて、その構成の一例を示すブロック図である。
【図５】本発明の実施の形態５によるメモリシステムにおいて、その構成の一例を示すブロック図である。
【図６】本発明の実施の形態６によるメモリシステムにおいて、その構成の一例を示すブロック図である。
【図７】本発明の実施の形態７によるメモリシステムにおいて、その構成の一例を示すブロック図である。
【図８】本発明の実施の形態８によるメモリシステムにおいて、その構成の一例を示すブロック図である。
【図９】本発明の実施の形態９によるメモリシステムにおいて、その構成の一例を示すブロック図である。
【図１０】本発明の実施の形態１０によるメモリシステムにおいて、その構成の一例を示すブロック図である。
【図１１】本発明の実施の形態１１によるメモリシステムにおいて、その構成の一例を示すブロック図である。
【図１２】本発明の実施の形態１２によるメモリシステムにおいて、その構成の一例を示すブロック図である。
【図１３】図１におけるオールゼロ判定部の構成例を示す概略図であり、（ａ）は各バイト毎の比較を行う構成例、（ｂ）はデータ総和によって判定を行う構成例である。
【図１４】図４のメモリシステムにおける管理テーブルの構成例を示す概念図である。
【図１５】本発明の前提として検討したメモリシステムにおいて、それに含まれるフラッシュメモリの記憶状態の一例を示す説明図である。
【符号の説明】
【００７３】
ＨＳＴ  ホスト
ＣＴＬ  コントローラ
ＥＣＣＧ  エラーコード処理部
ＡＬＬ０Ｊ  オールゼロ判定部
ＲＡＭ  揮発性メモリ
ＦＭ  フラッシュメモリ
ＥＣＣＪＧＥ  ＥＣＣ判定部
ＴＢ  管理テーブル
ＤＥＴ  遮断検出切替回路
Ｃ１  コンデンサ
ＡＤＣＴＬ  アドレス制御部
ＥＳＪ  消去判定部
ＡＬＬ０Ｇ  オールゼロ生成部
ＡＬＬ０１Ｊ  オールゼロイチ判定部
ＡＤＤ  加算部
ＲＥＧ  レジスタ
ＬＡＤＤ  論理アドレス
ＰＡＤＤ  物理アドレス
ＢＬＫ  ブロック
ＳＴＡ＿ＡＲ  ステータス領域
ＬＡＤＤ＿ＡＲ  論理アドレス領域
ＥＣＣ＿ＡＲ  エラーコード領域
【図１】
2009064238.tif 000003
【図２】
2009064238.tif 000004
【図３】
2009064238.tif 000005
【図４】
2009064238.tif 000006
【図５】
2009064238.tif 000007
【図６】
2009064238.tif 000008
【図７】
2009064238.tif 000009
【図８】
2009064238.tif 000010
【図９】
2009064238.tif 000011
【図１０】
2009064238.tif 000012
【図１１】
2009064238.tif 000013
【図１２】
2009064238.tif 000014
【図１３】
2009064238.tif 000015
【図１４】
2009064238.tif 000016
【図１５】
2009064238.tif 000017