(57)【要約】【課題】  メモリカードにおける書き込み中断発生などによるデータの書き込みエラーなどを検出し、データの信頼性を大幅に向上させる。【解決手段】  メモリカードの書き込み時に、パターン付加部１０が付加パターンを生成して書き込みデータに付加し、フラッシュメモリに格納する。パターン付加部１０は、不揮発性メモリセルに設定された複数のしきい値電圧にそれぞれ対応するパターンを割り当て、データ書き込み時に最後の書き込みとなるしきい値電圧に対応したパターンを付加パターンとしてデータ部に付加する。データ読み出しの際、パターン検出部１１は、読み出したデータの付加パターンとパターン付加部１０が付加した付加パターンとを比較し、一致した場合には正当なデータとして所定の処理を行う。一致しない場合にはエラー終了する。【選択図】  図２
2006040013.tif 000002
【特許請求の範囲】
【請求項１】
ある電圧レベルのしきい値電圧が複数設定され、２ビット以上のデータを記憶する複数の不揮発性メモリセルを有し、所定の情報を格納可能な不揮発性半導体メモリと、外部から発行されたコマンドに基づいて前記不揮発性半導体メモリの動作指示を行うコントローラとを有したメモリカードであって、
前記コントローラは、
複数設定されたしきい値電圧毎に任意のビットパターンをそれぞれ付与し、データの書き込み時に、少なくとも最後のデータ書き込みとなるしきい値電圧に対応したビットパターンを付加パターンとして書き込みデータとともに書き込むパターン付加部を備えたことを特徴とするメモリカード。
【請求項２】
請求項１記載のメモリカードにおいて、
前記パターン付加部は、
前記不揮発性メモリセルのしきい値電圧が低い電圧から順に書き込みを行う際には、消去状態のしきい値電圧を除く少なくとも最上位のしきい値電圧に対応するビットパターンを付加パターンとして付加し、前記不揮発性メモリセルのしきい値電圧が高い電圧から順に書き込みを行う際には、消去状態のしきい値電圧を除く少なくとも最下位のしきい値電圧に対応するビットパターンを付加パターンとして付加することを特徴とするメモリカード。
【請求項３】
請求項１または２記載のメモリカードにおいて、
前記パターン付加部は、
多値書き込みされたすべてのしきい値電圧に対応したビットパターンを付加パターンとして書き込みデータとともに書き込むことを特徴とするメモリカード。
【請求項４】
請求項１〜３のいずれか１項に記載のメモリカードにおいて、
前記パターン付加部が付加した付加パターンは、データ格納単位であるセクタ毎に格納されることを特徴とするメモリカード。
【請求項５】
請求項１〜４のいずれか１項に記載のメモリカードにおいて、
前記コントローラは、
前記パターン付加部が付加した付加パターンとデータの読み出し時に読み出した付加パターンとが一致するか否かを検出し、読み出したデータの正当性を確認するパターン検出部を備えたことを特徴とするメモリカード。
【請求項６】
請求項１〜５のいずれか１項に記載のメモリカードにおいて、
前記コントローラは、
書き込み時に、書き込みデータと前記パターン付加部が付加した付加パターンとに基づいてＥＣＣコードを生成して付加するＥＣＣ生成部を備えたことを特徴とするメモリカード。
【請求項７】
請求項６記載のメモリカードにおいて、
前記コントローラは、
前記不揮発性半導体メモリからのデータ読み出し時に、前記ＥＣＣ生成部が付加したＥＣＣコードをチェックするＥＣＣ検出部を備えたことを特徴とするメモリカード。
【請求項８】
請求項６または７記載のメモリカードにおいて、
前記コントローラは、
前記ＥＣＣ検出部がエラー検出した際に、データの訂正処理を行うＥＣＣ訂正部を備えたことを特徴とするメモリカード。
【請求項９】
複数のメモリセルを有し、電気的に情報の書き込みまたは消去を可能とする不揮発性メモリと、コントローラとを有し、
前記コントローラは前記不揮発性メモリへ書き込み動作指示を含む複数の動作指示を発行することが可能であり、
前記不揮発性メモリはさらに、前記メモリセルのゲート端子に所定の電圧を印加した状態においてソース端子とドレイン端子間を流れる電流の多少に応じたメモリセルの複数の状態のうちいずれの状態にあるかを決定するセンス回路と、前記コントローラの発行する動作指示に応じて所定の動作を行う制御を行う制御回路とを有し、
前記コントローラからの書き込み動作指示に応じて、前記制御回路は前記複数のメモリセルから第１のメモリセルと第２のメモリセルとを選択し、前記第１のメモリセルを前記複数の状態のうちの前記コントローラから供給された書き込みデータに応じた１の状態に遷移させると共に、前記第２のメモリセルを前記複数の状態のうちの最後に状態の遷移が完了する１の状態へ遷移させる制御を行う不揮発性記憶装置。
【請求項１０】
請求項９記載の不揮発性記憶装置において、
前記複数の状態のうちの最後に状態の遷移が完了する１の状態は、１の書き込み動作指示についての制御において、複数の前記第１のメモリセルのそれぞれが前記複数の状態の相互に異なる１の状態に遷移すべき場合に、最後に状態の遷移が完了する状態であることを特徴とする不揮発性記憶装置。
【請求項１１】
請求項９または１０記載の不揮発性記憶装置において、
前記コントローラは、前記書き込みデータと共に、前記第２のメモリセルを前記複数の状態のうちの最後に状態の遷移が完了する１の状態へ遷移させるためのデータを供給することを特徴とする不揮発性記憶装置。
【請求項１２】
請求項９〜１１のいずれか１項に記載の不揮発性記憶装置において、
前記センス回路は、前記第１のメモリセルと前記第２のメモリセルのそれぞれが前記書き込みデータに応じた１の状態または複数の状態のうちの最後に状態の遷移が完了する１の状態に遷移したか否かを判定するために用いられることを特徴とする不揮発性記憶装置。
【請求項１３】
請求項９〜１２のいずれか１項に記載の不揮発性記憶装置において、
前記コントローラからの読み出し動作指示に応じて、前記制御回路は前記第１のメモリセルと前記第２のメモリセルとを選択し、前記センス回路により決定された状態に応じたデータを前記コントローラに供給し、
前記コントローラは、前記第２のメモリセルの状態に応じたデータが前記複数の状態のうちの最後に状態の遷移が完了する１の状態に対応するデータであるか否かを判定し、前記複数の状態のうちの最後に状態の遷移が完了する１の状態に対応するデータでない場合、前記第１のメモリセルの状態に応じたデータについて前記書き込み動作指示に応じた制御が完了していないことを判定することを特徴とする不揮発性記憶装置。
【請求項１４】
請求項９〜１３のいずれか１項に記載の不揮発性記憶装置において、
前記メモリセルの複数の状態は、それぞれのメモリセルのしきい値電圧が前記複数の状態のそれぞれに対応した電圧範囲のうちのいずれに含まれるかにより決定されることを特徴とする不揮発性記憶装置。
【請求項１５】
請求項１４記載の不揮発性記憶装置において、
前記読み出し指示に応じて、前記制御回路は、前記第１のメモリセルと前記第２のメモリセルとのゲート端子に前記複数の電圧範囲のそれぞれに対応した複数の電圧の１を印加し、前記センス回路は、それぞれのメモリセルがオンするかオフするかをセンスし、それぞれのメモリセルの状態を決定することを特徴とする不揮発性記憶装置。
【請求項１６】
請求項９〜１５のいずれか１項に記載の不揮発性記憶装置において、
前記メモリセルの複数の状態は、それぞれのメモリセルのゲート端子に所定の電圧を印加した場合にソース端子とドレイン端子との間を流れる電流量が前記複数の状態のそれぞれに対応した電流範囲のいずれに含まれるかにより決定されることを特徴とする不揮発性記憶装置。
【請求項１７】
請求項１６記載の不揮発性記憶装置において、
前記読み出し動作指示に応じて、前記制御回路は前記第１のメモリセルと前記第２のメモリセルとのゲート端子に第１電圧を印加し、前記センス回路はそれぞれのメモリセルのソース端子とドレイン端子との間を流れる電流量が前記複数の状態のそれぞれに対応した電流範囲のいずれに含まれるかをセンスしそれぞれのメモリセルの状態を決定することを特徴とする不揮発性記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メモリカードにおけるデータの信頼性向上技術に関し、特に、データ書き込み処理の中断発生によるデータのエラー検出、および訂正に適用して有効な技術に関するものである。
【背景技術】
【０００２】
パーソナルコンピュータや多機能端末機などの記憶装置として、たとえば、マルチメディアカードやＣＦ（Ｃｏｍｐａｃｔ  Ｆｌａｓｈ（Ｒ））カードなどのメモリカードが広く知られている。
【０００３】
このようなメモリカードには、たとえば、データの書き込み中などにおいて、電源遮断、システムの不安定動作、あるいは割り込み処理などによって、書き込み処理が中断した場合、次回アクセス時に書き込みデータ、または書き込み処理の中断により影響を及ぼす範囲のデータをＥＣＣ（Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｎｇ  Ｃｏｄｅ）などの冗長データによってエラー検出／訂正し、リード／ライトデータの信頼性を向上させる技術がある。
【０００４】
また、この種のメモリカードにおけるリード／ライトデータの信頼性を向上させる技術として、たとえば、小規模なデータ訂正のみを情報記憶装置であるメモリカード内で実行し、大規模なエラー訂正をホストである情報処理装置において実行することにより、情報処理システムの処理性能を低下させず、コストの増大を最小限に抑え、かつ回路規模を増大させることなくデータの信頼性を向上させる技術がある（特許文献１参照）。
【特許文献１】特願２００３−０３０２９２号
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところが、上記のようなメモリカードにおけるデータ訂正技術では、次のような問題点があることが本発明者により見い出された。
【０００６】
すなわち、電源遮断などがデータの書き込み処理中に発生してしまうと、データに多数のエラーが生じてしまうことになる。その場合、ＥＣＣなどによるデータの訂正能力を超えてしまい、データの誤検出／誤訂正などが発生してしまう問題があり、メモリカードの信頼性を損ねてしまう恐れがある。
【０００７】
本発明の目的は、メモリカードにおける書き込み中断発生を検出することにより、データの信頼性を大幅に向上させることのできる技術を提供することにある。
【０００８】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【０００９】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次のとおりである。
【００１０】
本発明は  複数の不揮発性メモリセルを有し、該不揮発性メモリセルは、ある電圧レベルのしきい値電圧が複数設定され、２ビット以上のデータを記憶して所定の情報を格納可能な不揮発性半導体メモリと、外部から発行されたコマンドに基づいて不揮発性半導体メモリの動作指示を行うコントローラとを備えたメモリカードであって、コントローラは、複数設定されたしきい値電圧毎にビットパターンをそれぞれ付与し、データの書き込み時に、少なくとも最後のデータ書き込みとなるしきい値電圧に対応したビットパターンを付加パターンとして書き込みデータとともに書き込むパターン付加部を備えたものである。
【００１１】
本発明は、前記パターン付加部が、不揮発性メモリセルのしきい値電圧が低い電圧から順に書き込みを行う際に、少なくとも最上位のしきい値電圧に対応するビットパターンを付加パターンとして付加し、不揮発性メモリセルのしきい値電圧が高い電圧から順に書き込みを行う場合、少なくとも最下位のしきい値電圧に対応するビットパターンを付加パターンとして付加するものである。
【００１２】
また、本発明のメモリカードは、前記パターン付加部が、多値書き込みされたすべてのしきい値電圧に対応したビットパターンを付加パターンとして書き込みデータとともに書き込むものである。
【００１３】
さらに、本発明のメモリカードは、前記パターン付加部が付加した付加パターンをデータ格納単位であるセクタ毎に格納するものである。
【００１４】
また、本発明のメモリカードは、前記コントローラに、パターン付加部が付加した付加パターンとデータの読み出し時に読み出した付加パターンとが一致するか否かを検出し、読み出したデータの正当性を確認するパターン検出部を備えたものである。
【００１５】
さらに、本発明のメモリカードは、前記コントローラに、書き込み時に書き込みデータとパターン付加部が付加した付加パターンとに基づいてＥＣＣコードを生成して付加するＥＣＣ生成部を備えたものである。
【００１６】
また、本発明のメモリカードは、前記コントローラに、不揮発性半導体メモリからのデータ読み出し時に、ＥＣＣ生成部が付加したＥＣＣコードをチェックするＥＣＣ検出部を備えたものである。
【００１７】
さらに、本発明のメモリカードは、前記コントローラに、ＥＣＣ検出部がエラー検出した際に、データの訂正処理を行うＥＣＣ訂正部を備えたものである。
【００１８】
また、本願のその他の発明の概要を簡単に示す。
【００１９】
本発明は、複数のメモリセルを有し、電気的に情報の書き込みまたは消去を可能とする不揮発性メモリと、コントローラとを有した不揮発性記憶装置であって、該コントローラは不揮発性メモリへ書き込み動作指示を含む複数の動作指示を発行することが可能であり、該不揮発性メモリはさらに、メモリセルのゲート端子に所定の電圧を印加した状態においてソース端子とドレイン端子間を流れる電流の多少に応じたメモリセルの複数の状態のうちいずれの状態にあるかを決定するセンス回路と、コントローラの発行する動作指示に応じて所定の動作を行う制御を行う制御回路とを有し、コントローラからの書き込み動作指示に応じて、該制御回路は複数のメモリセルから第１のメモリセルと第２のメモリセルとを選択し、第１のメモリセルを複数の状態のうちのコントローラから供給された書き込みデータに応じた１の状態に遷移させると共に、第２のメモリセルを複数の状態のうちの最後に状態の遷移が完了する１の状態へ遷移させる制御を行うものである。
【００２０】
また、本発明の不揮発性記憶装置は、前記複数の状態のうちの最後に状態の遷移が完了する１の状態が、１の書き込み動作指示についての制御において、複数の第１のメモリセルのそれぞれが複数の状態の相互に異なる１の状態に遷移すべき場合に、最後に状態の遷移が完了する状態よりなるものである。
【００２１】
さらに、本発明の不揮発性記憶装置は、前記コントローラが、書き込みデータと共に、第２のメモリセルを前記複数の状態のうちの最後に状態の遷移が完了する１の状態へ遷移させるためのデータを供給するものである。
【００２２】
また、本発明の不揮発性記憶装置は、前記センス回路が、第１のメモリセルと第２のメモリセルのそれぞれが書き込みデータに応じた１の状態または複数の状態のうちの最後に状態の遷移が完了する１の状態に遷移したか否かを判定するために用いられるものである。
【００２３】
さらに、本発明の不揮発性記憶装置は、前記コントローラからの読み出し動作指示に応じて、制御回路は第１のメモリセルと第２のメモリセルとを選択し、センス回路により決定された状態に応じたデータをコントローラに供給し、該コントローラは、第２のメモリセルの状態に応じたデータが複数の状態のうちの最後に状態の遷移が完了する１の状態に対応するデータであるか否かを判定し、複数の状態のうちの最後に状態の遷移が完了する１の状態に対応するデータでない場合、第１のメモリセルの状態に応じたデータについて書き込み動作指示に応じた制御が完了していないことを判定するものである。
【００２４】
また、本発明の不揮発性記憶装置は、前記メモリセルの複数の状態が、それぞれのメモリセルのしきい値電圧が複数の状態のそれぞれに対応した電圧範囲のうちのいずれに含まれるかにより決定されるものである。
【００２５】
さらに、本発明の不揮発性記憶装置は、前記読み出し指示に応じて、制御回路が、第１のメモリセルと第２のメモリセルとのゲート端子に複数の電圧範囲のそれぞれに対応した複数の電圧の１を印加し、センス回路は、それぞれのメモリセルがオンするかオフするかをセンスし、それぞれのメモリセルの状態を決定するものである。
【００２６】
また、本発明の不揮発性記憶装置は、前記メモリセルの複数の状態が、それぞれのメモリセルのゲート端子に所定の電圧を印加した場合にソース端子とドレイン端子との間を流れる電流量が複数の状態のそれぞれに対応した電流範囲のいずれに含まれるかにより決定されるものである。
【００２７】
さらに、本発明の不揮発性記憶装置は、前記読み出し動作指示に応じて、前記制御回路が第１のメモリセルと第２のメモリセルとのゲート端子に第１電圧を印加し、センス回路はそれぞれのメモリセルのソース端子とドレイン端子との間を流れる電流量が複数の状態のそれぞれに対応した電流範囲のいずれに含まれるかをセンスしそれぞれのメモリセルの状態を決定するものである。
【発明の効果】
【００２８】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下のとおりである。
【００２９】
（１）付加パターンによって、書き込みデータが不具合なく書き込まれたか否かを判定することができるので、書き込み処理の中断などの発生によるデータの誤検出や誤訂正などを大幅に低減することができる。
【００３０】
（２）上記（１）により、メモリカードの信頼性を向上させることができる。
【発明を実施するための最良の形態】
【００３１】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００３２】
図１は、本発明の一実施の形態によるメモリカードのブロック図、図２は、図１のメモリカードに設けられたコントローラのブロック図、図３は、図１のメモリカードに設けられたフラッシュメモリにおけるメモリアレイの構成例を示す説明図、図４は、図３のメモリアレイにおけるメモリマップの構成例を示す説明図、図５は、図４のメモリアレイにおけるデータ部に設けられたデータ部の構成例を示す説明図、図６は、図３のメモリアレイに設けられた不揮発性メモリセルのしきい値電圧の分布、および付加パターンの一例を示す説明図、図７は、図１のメモリカードに設けられたフラッシュメモリにおけるメモリアレイの他の構成例を示す説明図、図８は、図７に示した不揮発性メモリセルにおけるしきい値電圧の分布、および付加パターンの一例を示す説明図、図９は、図１のメモリカードにおける読み出し処理のフローチャート、図１０は、図１のメモリカードにおける書き込み処理のフローチャートである。
【００３３】
本実施の形態において、メモリカード１は、図１に示すように、該メモリカード１の外部にホスト機器２が接続可能なようにされており、たとえば、デジタルビデオカメラ、携帯電話、携帯音楽プレーヤやパーソナルコンピュータなどのホスト機器２の外部記憶メディアとして用いられる。
【００３４】
メモリカード１は、フラッシュメモリ（不揮発性半導体メモリ）３に例示される不揮発性メモリ、ならびにコントローラ４から構成されている。フラッシュメモリ３は、たとえば、２ビット以上のデータを記憶させる多値記憶技術を用いた多値フラッシュメモリからなる。
【００３５】
このフラッシュメモリ３は、電気的にデータの書き換え、消去が可能な不揮発性半導体メモリからなる。ここでは、フラッシュメモリ３が１個の半導体メモリよりなる構成としたが、該半導体メモリは１つ以上であればよい。
【００３６】
コントローラ４は、図２に示すように、ホスト側インタフェース５、ＭＰＵ（ＭｉｃｒｏＰｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）６、バッファインタフェース７、データバッファ８、記憶部側インタフェース９、パターン付加部１０、パターン検出部１１、ＥＣＣ検出部１２、ＥＣＣ生成部１３、およびＥＣＣ訂正部１４から構成されている。
【００３７】
コントローラ４は、ホスト機器２と接続されており、フラッシュメモリ３の制御を司り、該フラッシュメモリ３に格納されたプログラムやデータなどを読み出してホスト機器２へ出力し、またはホスト機器２から入力されたプログラムやデータの書き込み動作指示を行う。
【００３８】
ホスト側インタフェース５は、ホスト機器２とＭＰＵ６とのインタフェースである。ＭＰＵ６は、コントローラ４におけるすべての制御を司る。バッファインタフェース７は、ＭＰＵ６とデータバッファ８とのインタフェースである。
【００３９】
また、データバッファ８は、たとえば、ＳＲＡＭ（Ｓｔａｔｉｃ  Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）などの揮発性メモリからなり、ＭＰＵ６に設けられたＣＰＵのワークエリアとしても用いられる。記憶部側インタフェース９は、ＭＰＵ６とフラッシュメモリ３とのインタフェースである。
【００４０】
パターン付加部１０は、不揮発性メモリセルＳ（図３）における複数のしきい値電圧に対応するパターン（ビットパターン）を生成し、データの正当性を確認する付加パターン（期待値）を書き込みデータに付加する。パターン検出部１１は、パターン付加部１０に付加された付加パターンとデータ読み出し時に読み出した付加パターンとをチェックする。
【００４１】
ＥＣＣ検出部１２は、フラッシュメモリ３からのデータ読み出し時に、ＥＣＣ生成部１３が生成したＥＣＣコードとＥＣＣコードを付加した範囲のデータより、エラー検出を行い、エラー検出時は、ＥＣＣ訂正部１４に訂正処理を開始させる。また、訂正処理時には訂正の成否を検出し、訂正不可の際には、訂正処理を停止してＭＰＵ６に訂正不可であることを出力し、ホスト機器２にエラー通知を行う。
【００４２】
ＥＣＣ生成部１３は、ＥＣＣを付加するデータよりＥＣＣコードを生成し、データに付加する。ここでは、ＥＣＣを付加するデータとは、書き込みデータと付加パターンとを示す。ＥＣＣ訂正部１４は、ＥＣＣ検出部１２がエラーを検出した際、そのエラー検出結果とデータ、およびＥＣＣコードから、データの訂正処理を行う。また、このデータの訂正処理時には、エラー検出結果を用いなくてもよい。
【００４３】
なお、これらパターン付加部１０、パターン検出部１１、ＥＣＣ検出部１２、ＥＣＣ生成部１３、ならびにＥＣＣ訂正部１４は、回路として持たず、たとえば、ＭＰＵ６によるファームウェア処理によって代用する構成としてもよい。
【００４４】
図３は、フラッシュメモリ３におけるメモリアレイＭＡの構成例を示す説明図である。
【００４５】
図示するように、メモリアレイＭＡは、グローバルビット線ＧＢＬに複数のサブビット線ＳＢＬが接続されるＡＮＤ型、またはＮＯＲ型のアレイ構造を持ち、それらサブビット線ＳＢＬに、ＡＧ−ＡＮＤ（Ａｓｓｉｓｔ  Ｇａｔｅ  ＡＮＤ）型などからなる不揮発性メモリセルＳがそれぞれ接続された構成からなる。
【００４６】
また、グローバルビット線ＧＢＬには、電圧センスＳＶが接続されている。電圧センスＳＶは、グローバルビット線ＧＢＬの電圧差を検出し、該電圧センスＳＶによって不揮発性メモリセルＳのしきい値電圧の差異を検出する。
【００４７】
ワード線ＷＬに接続された複数の不揮発性メモリセルＳを一括消去することができ、これをブロック（消去単位）という。データを読み出す場合、選択したワード線ＷＬに書き込み用電圧を加え、該ワード線ＷＬに接続された不揮発性メモリセルＳからサブビット線ＳＢＬを介し、データを読み出す。データを書き込む場合、ワード線ＷＬとサブビット線ＳＢＬとを選択して電圧を加え、不揮発性メモリセルＳへデータを書き込む。
【００４８】
図４は、フラッシュメモリ３におけるメモリアレイＭＡのマップ構成を示す説明図である。
【００４９】
メモリアレイＭＡにおける消去単位であるブロックは、図示するように、データ格納単位であるセクタ毎に分割され、ユーザデータを格納するデータ部Ｄと、そのブロックを管理する管理情報が格納される管理部Ｋとによって、それぞれ構成されている。
【００５０】
また、ブロックのデータ部Ｄは、図５に示すように、書き込みされるデータ、パターン付加部１０によって付加された付加パターン、ならびにデータを保護するＥＣＣによって構成されている。ＥＣＣは、書き込みされるデータと付加された付加パターンとを別々に生成し、付加するようにしてもよい。
【００５１】
図６は、図３の不揮発性メモリセルＳのしきい値電圧の分布、および付加パターンの一例を示す説明図である。
【００５２】
フラッシュメモリ３は、前述したように多値フラッシュメモリよりなり、１つの不揮発性メモリセルＳには、ある電圧レベルのしきい値電圧が複数設定され、２ビット以上のデータが記憶される。
【００５３】
不揮発性メモリセルＳが４値の場合、パターン付加部１０は、４つのしきい値電圧にそれぞれ対応するパターンを割り当てる。たとえば、図６では、上から順に４つのしきい値電圧に対して、’’０１’’、’’００’’、’’１０’’、’’１１’’をそれぞれ付加しており、’’１１’’が消去状態となっている。
【００５４】
その後、パターン付加部１０は、データ書き込み時において、最後の書き込みとなるしきい値電圧分布に対応したパターンを付加パターンとしてデータ部Ｄに付加する。たとえば、データの書き込み順序が、’’０１’’、’’００’’、’’１０’’の場合には、付加パターンとして’’１０’’が付加されることになる。
【００５５】
また、ここでは、最後の書き込みとなるしきい値電圧分布に対応したパターンを付加パターンとして付加したが、付加パターンは、少なくとも最後の書き込みとなるしきい値電圧分布に対応したパターンを付加すればよく、たとえば、多値書き込みされたすべてのしきい値電圧分布に対応したパターンを付加パターンとして付加するようにしてもよい。
【００５６】
図７は、フラッシュメモリ３におけるメモリアレイＭＡの他の構成例を示す説明図である。
【００５７】
この場合、不揮発性メモリセルＳは、ＮＯＲ型、またはＮＡＮＤ型などからなり、図示するように、メモリアレイＭＡは、複数のワード線ＷＬと、複数のビット線ＢＬとを有し、それぞれの不揮発性メモリセルＳは対応するワード線にゲート電極が接続され、対応するデータ線に接続されることによりアレイ状に形成されている。
【００５８】
また、ビット線ＢＬには、電流センスＳＩが接続されており、該電流センスＳＩによってビット線ＢＬの電流差を検出し、不揮発性メモリセルＳのしきい値電圧の差異を検出する。また、ワード線ＷＬに接続された複数の不揮発性メモリセルＳを一括消去することができ、これをブロック（消去単位）という。
【００５９】
データを読み出す場合、選択したワード線ＷＬに読み出し用電圧を加え、非選択のワード線ＷＬには非選択用電圧を与える。選択ワード線ＷＬに接続された不揮発性メモリセルＳからビット線ＢＬを介し、データを読み出す。また、データを書き込む場合、ワード線ＷＬとビット線ＢＬとを選択して電圧を加え、不揮発性メモリセルＳへデータを書き込む。
【００６０】
図８は、図７に示した不揮発性メモリセルＳにおけるしきい値電圧の分布、および付加パターンの一例を示す説明図である。
【００６１】
この場合、１の不揮発性メモリセルＳのしきい値電圧が電流センスＳＩでセンスする電流量を決定する主たる要因とし直列接続される他の不揮発性メモリセルＳの持つ抵抗を付加的要因として２ビット以上のデータが記憶される。
【００６２】
不揮発性メモリセルＳが４値の場合、パターン付加部１０が、４つのしきい値電圧にそれぞれ対応するパターンを、’’０１’’、’’００’’、’’１０’’、’’１１（消去状態）’’をそれぞれ付加する。
【００６３】
そして、パターン付加部１０は、データ書き込み時において、最後の書き込みとなるしきい値電圧分布に対応したパターン、たとえば、データの書き込み順序が、’’０１’’、’’００’’、’’１０’’の場合には、付加パターンとして’’１０’’をデータ部Ｄに付加する。
【００６４】
また、ここでも、最後の書き込みとなるしきい値電圧分布に対応したパターンを付加パターンとして付加したが、付加パターンは、少なくとも最後の書き込みとなるしきい値電圧分布に対応したパターンを付加すればよく、たとえば、多値書き込みのすべてのしきい値電圧分布に対応したパターンを付加パターンとして付加するようにしてもよい。
【００６５】
次に、本実施の形態によるメモリカード１における読み出し処理について、図９のフローチャートを用いて説明する。
【００６６】
まず、ホスト機器２から読み出し要求があると、ＭＰＵ６は、フラッシュメモリ３からデータを読み出し、ＥＣＣ検出部１２が読み出したデータのＥＣＣチェックを行う（ステップＳ１０１）。
【００６７】
ＥＣＣチェックがＯＫの場合、パターン検出部１１により、パターン付加部が付加した付加パターンとフラッシュメモリ３から読み出した付加パターンと比較するパターンチェックが行われる（ステップＳ１０２）。
【００６８】
また、ステップＳ１０１の処理において、ＥＣＣチェックがＮＧの場合には、ＥＣＣ訂正部１４が、ＥＣＣ訂正を試みる（ステップＳ１０３）。
【００６９】
ステップＳ１０３の処理において、ＥＣＣ訂正が可能であれば訂正処理を行い、その後、ステップＳ１０２の処理を行う。ＥＣＣ訂正が不可の際には、ＭＰＵ６やホスト機器２にエラー通知を行い、エラー終了となる（ステップＳ１０４）。
【００７０】
また、ステップＳ１０２の処理において、パターンチェックが一致した場合、データが正当であるので、読み出したデータがユーザデータの場合には、ホスト機器２に出力し、システムデータの場合には、そのデータを用いて処理を実行する。
【００７１】
ステップＳ１０２の処理で、パターンチェックが一致しない場合には、ＭＰＵ６やホスト機器２にエラー通知を行い、エラー終了となる（ステップＳ１０４）。なお、図９では、ＥＣＣチェックを行った後に、付加パターンのチェックを行う処理としたが、該付加パターンのチェックを行った後にＥＣＣチェックを行うようにしてもよい。
【００７２】
次に、メモリカード１における書き込み処理について、図１０のフローチャートを用いて説明する。
【００７３】
まず、パターン付加部１０によって付加パターンを生成し、書き込みデータに該付加パターンを付加する（ステップＳ２０１）。続いて、ＥＣＣ検出部１２が、書き込みデータと付加パターンとに基づいてＥＣＣコードを生成し、付加する（ステップＳ２０２）。
【００７４】
その後、ＥＣＣコードが付加された書き込みデータをフラッシュメモリ３に書き込み、書き込みがＯＫであれば（ステップＳ２０３）、書き込みが終了となる。また、書き込みがＮＧの場合には（ステップＳ２０３）、再書き込み処理、もしくは代替処理を行い（ステップＳ２０４）、ステップＳ２０３の処理を行う。
【００７５】
ステップＳ２０４の処理において、再書き込み処理を同じブロックに再度書き込み処理を行い、代替処理の場合には、新たなブロックに書き込み処理を行い、その書き込みがＮＧの場合には、そのブロックを不良ブロックとして扱う処理を行う。
【００７６】
それにより、本実施の形態によれば、付加パターンによって書き込み処理が最後まで行われているか否かを判定することができるので、書き込み中断発生の検出、およびデータの誤検出／誤訂正などを低減することができ、メモリカード１の信頼性を向上させることができる。
【００７７】
また、本実施の形態では、コントローラ４（図２）に、パターン付加部１０、パターン検出部１１、ＥＣＣ検出部１２、ＥＣＣ生成部１３、およびＥＣＣ訂正部１４などを設けた構成としたが、たとえば、図１１に示すように、これらの機能をフラッシュメモリ３に設ける構成としてもよい。
【００７８】
この場合、フラッシュメモリ３は、図１１に示すように、パターン付加部１０、パターン検出部１１、ＥＣＣ検出部１２、ＥＣＣ生成部１３、ＥＣＣ訂正部１４、入出力部１５、制御回路１６、データバッファ１７、およびメモリアレイＭＡなどから構成される。
【００７９】
入出力部１５は、フラッシュメモリ３に入出力されるデータ、ならびに制御信号などの入出力部である。制御回路１６は、シーケンサ、バッファ、電源回路、デコーダなどからなる周辺回路を含み、フラッシュメモリ３におけるすべての制御を司る。データバッファ１７は、書き込み／読み出しのデータ待避用のバッファである。
【００８０】
この場合、ＥＣＣ検出部１２、ＥＣＣ生成部１３、ならびにＥＣＣ訂正部１４は、フラッシュメモリ３内に回路として持たず、コントローラ４に有するようにしても良い。フラッシュメモリ３は、データの読み出し時に付加パターンをパターン検出部１１で検出し、書き込み処理が最後まで行われていない場合には読み出しエラーとしてコントローラに通知をすることで、書き込み中断発生の検出、及びデータの誤検出／誤訂正などを低減することができ、メモリカード１の信頼性を向上することができる。
【００８１】
一方、図１１のこの構成によって、外部にコントローラなどを接続することが不要となるので、電子システムなどの組み込み機器に実装する場合に、実装面積を低減することができる。この場合も、パターン付加部１０、パターン検出部１１、ＥＣＣ検出部１２、ＥＣＣ生成部１３、ならびにＥＣＣ訂正部１４は、回路として持たず、たとえば、ＭＰＵ６によるファームウェア処理によって代用する構成としてもよい。
【００８２】
また、本実施の形態の図６、図８においては、不揮発性メモリセルＳにおけるデータの書き込み順序が、しきい値電圧の高い方から順に書き込みを行う（’’０１’’、’’００’’、’’１０’’）場合について記載したが、たとえば、図１２、図１３にそれぞれ示すように、不揮発性メモリセルＳのしきい値電圧が低い方から順に書き込みを行う場合には、最上位のしきい値電圧に対応する付加パターン’’Ｐ＿ｄａｔａ４’’を付加する。
【００８３】
ここでも、最後の書き込みとなるしきい値電圧分布に対応したパターンを付加パターンとして付加したが、付加パターンは、少なくとも最後の書き込みとなるしきい値電圧分布に対応したパターンを付加すればよく、たとえば、多値書き込みのすべてのしきい値電圧分布に対応したパターンを付加パターンとして付加するようにしてもよい。
【００８４】
以上、本発明者によってなされた発明を実施の形態に基づき具体的に説明したが、本発明は前記実施の形態に限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能であることはいうまでもない。
【００８５】
たとえば、前記実施の形態では、ＥＣＣを付加することによって付加パターンを保護する構成としたが、付加パターンをＥＣＣによって保護しない構成としてもよい。
【００８６】
図１４は、付加パターンをＥＣＣによって保護しない場合のブロックにおけるデータ部Ｄの構成例を示した説明図である。
【００８７】
図示するように、データ部Ｄは、書き込みデータ、該データに対して付加されたＥＣＣ、ならびに付加パターンによって構成されており、付加パターンは、ＥＣＣコードによる検出／訂正の範囲外にある。
【００８８】
これにより、ＥＣＣを付加するデータ長が短くなるので、エラー検出、およびエラー訂正にかかる時間を短くすることができる。
【００８９】
また、パターンは、いくつかのビット化けに対応できるようにしてもよい。たとえば、１ビット化けまで対応し、かつ付加パターンが’’Ｆｈ’’の場合には、’’Ｅｈ’’、’’Ｄｈ’’、’’Ｂｈ’’、’’７ｈ’’は、’’Ｆｈ’’と同等に扱うものとする。
【００９０】
さらに、図１５は、図１４に示した付加パターンをＥＣＣによって保護しない場合のメモリカード１における読み出し処理の他の例を示したフローチャートである。この場合、ＥＣＣチェック後に付加パターンのチェックを行うものである。
【００９１】
まず、ホスト機器２から読み出し要求があると、フラッシュメモリ３からデータを読み出し、パターン検出部１１により、パターンチェックが行われる（ステップＳ３０１）。
【００９２】
パターンチェックが一致した場合、ＥＣＣ検出部１２によって読み出したデータのＥＣＣチェックが行われる（ステップＳ３０２）。また、ステップＳ３０１の処理で、パターンチェックが一致しない場合には、ＭＰＵ６やホスト機器２にエラー通知を行い、エラー終了となる（ステップＳ３０３）。
【００９３】
ステップＳ３０２の処理において、ＥＣＣチェックがＯＫの場合、データが正当であるので、読み出したデータがユーザデータの場合には、ホスト機器２に出力し、システムデータの場合には、そのデータを用いて処理を実行する。
【００９４】
ステップＳ３０２の処理で、ＥＣＣチェックがＮＧの場合には、ＥＣＣ訂正部１４が、ＥＣＣ訂正を試み（ステップＳ３０４）、ＥＣＣ訂正が可能であれば訂正処理を行う。ＥＣＣ訂正が不可の際には、ＭＰＵ６やホスト機器２にエラー通知を行い、エラー終了となる（ステップＳ３０３）。
【００９５】
また、図１６は、図１４に示した付加パターンをＥＣＣによって保護しない場合のメモリカード１におけるデータ書き込み処理のフローチャートである。ここでは、書き込みデータに対してＥＣＣを生成して付加し、ＥＣＣが付加されたデータに対して付加パターンを付加する。
【００９６】
この場合、ＥＣＣ検出部１２が、書き込みデータと付加パターンとに基づいてＥＣＣコードを生成して付加する（ステップＳ４０１）。続いて、パターン付加部１０が、付加パターンを生成し、書き込みデータに該付加パターンを付加する（ステップＳ４０２）。
【００９７】
その後、ＥＣＣコードが付加された書き込みデータをフラッシュメモリ３に書き込み、書き込みがＯＫであれば（ステップＳ４０３）、書き込みが終了となる。また、書き込みがＮＧの場合には（ステップＳ４０３）、再書き込み処理、もしきは代替処理を行い（ステップＳ４０４）、ステップＳ４０３の処理を行う。
【００９８】
さらに、前記実施の形態では、ブロックにおけるデータ部Ｄ（図５）に付加パターンを付加する構成としたが、たとえば、図１７に示すように、データ部Ｄは、データとＥＣＣとによって構成し、図１８に示すように、管理部Ｋに付加パターンを付加する構成としてもよい。
【００９９】
また、図２１に示すように、１ブロック（たとえば２Ｋバイト）あたりに複数のデータ（各５１２バイト）を格納するように、コントローラ４からフラッシュメモリ３に対して複数回の書き込み動作指示を発行するように構成をしてもよい。
【０１００】
この場合データ１の書き込み時に該ブロックを消去した後にデータ１を書き込み、その後のデータ２〜４の書き込み時には追加書き込みを行うように制御する。この場合、データｎに付加してまたは管理部Ｋのデータｎに対応する箇所に付加データの書き込みを行うようにすればよい。データの読み出し時にはデータｎと共に対応する付加データを読み出すことで、書き込み処理が中断されたか否かをデータ単位に検出することができる。
【０１０１】
この場合の不揮発性メモリセルＳの構成を、図１９、および図２０に示す。
【０１０２】
図１９は、データ、およびＥＣＣが書き込まれるデータ部Ｄにおける不揮発性メモリセルＳの構成を示す説明図であり、図２０は、管理情報、および付加パターンが書き込まれる管理部Ｋにおける不揮発性メモリセルＳの構成を示す不揮発性メモリセルＳの説明図である。
【０１０３】
不揮発性メモリセルＳは、たとえば、ソースＳＣ、ドレインＤＮからなる拡散層と、それらソースＳＣ／ドレインＤＮ間の半導体基板Ｗ上にトンネル膜を介してフローティングゲートＦＧが形成され、該フローティングゲートＦＧの上方には層間絶縁膜を介してコントロールＣＧが形成されたスタックド構造に構成されている。
【０１０４】
図１９の不揮発性メモリセルＳは、図２０の不揮発性メモリセルＳに比べてフローティングゲートＦＧが厚く形成されており、データの書き込み速度を図２０の不揮発性メモリセルＳよりも低下させた構成となっている。
【０１０５】
このように、データの書き込み速度を、管理情報、および付加パターンの書き込み速度よりも遅くすることによって、データ書き込みが完了した際には、管理情報、ならびに付加パターンが確実に完了している。
【０１０６】
この場合、書き込み単位内において不揮発性メモリセルの書き込み速度にばらつきがある場合に特に有効となる。
【産業上の利用可能性】
【０１０７】
本発明のメモリカードは、読み出し時におけるデータの信頼性を大幅に向上させる技術に適している。
【図面の簡単な説明】
【０１０８】
【図１】本発明の一実施の形態によるメモリカードのブロック図である。
【図２】図１のメモリカードに設けられたコントローラのブロック図である。
【図３】図１のメモリカードに設けられたフラッシュメモリにおけるメモリアレイの構成例を示す説明図である。
【図４】図３のメモリアレイにおけるメモリマップの構成例を示す説明図である。
【図５】図４のメモリアレイにおけるデータ部に設けられたデータ部の構成例を示す説明図である。
【図６】図３のフラッシュメモリに設けられた不揮発性メモリセルのしきい値電圧の分布、および付加パターンの一例を示す説明図である。
【図７】図１のメモリカードに設けられたフラッシュメモリにおけるメモリアレイの他の構成例を示す説明図である。
【図８】図７に示した不揮発性メモリセルにおけるしきい値電圧の分布、および付加パターンの一例を示す説明図である。
【図９】図１のメモリカードにおける読み出し処理のフローチャートである。
【図１０】図１のメモリカードにおける書き込み処理のフローチャートである。
【図１１】本発明の他の実施の形態によるフラッシュメモリのブロック図である。
【図１２】図１のフラッシュメモリに設けられた不揮発性メモリセルのしきい値電圧の分布、および付加パターンの他の例を示す説明図である。
【図１３】図７に示した不揮発性メモリセルにおけるしきい値電圧の分布、および付加パターンの他の例を示す説明図である。
【図１４】本発明の他の実施の形態による付加パターンをＥＣＣによって保護しない場合のデータ部の構成を示す説明図である。
【図１５】図１４におけるメモリカードにおける読み出し処理のフローチャートである。
【図１６】図１４におけるメモリカードにおける書き込み処理のフローチャートである。
【図１７】本発明の他の実施の形態によるブロックにおける構成例を示す説明図である。
【図１８】図１７に続くブロックにおける構成例を示す説明図である。
【図１９】図１７のデータ部における不揮発性メモリセルの構成例を示す説明図である。
【図２０】図１８の管理部における不揮発性メモリセルの構成例を示す説明図である。
【図２１】本発明の他の実施の形態によるフラッシュメモリのブロックにおける他の構成例を示す説明図である。
【符号の説明】
【０１０９】
１  メモリカード
２  ホスト機器
３  フラッシュメモリ（不揮発性半導体メモリ）
４  コントローラ
５  ホスト側インタフェース
６  ＭＰＵ
７  バッファインタフェース
８  データバッファ
９  記憶部側インタフェース
１０  パターン付加部
１１  パターン検出部
１２  ＥＣＣ検出部
１３  ＥＣＣ生成部
１４  ＥＣＣ訂正部
１５  入出力部
１６  制御回路
１７  データバッファ
ＭＡ  メモリアレイ
ＧＢＬ  グローバルビット線
ＳＢＬ  サブビット線
Ｓ  不揮発性メモリセル
ＳＶ  電圧センス
Ｄ  データ部
Ｋ  管理部
ＷＬ  ワード線
ＢＬ  ビット線
ＳＩ  電流センス
ＳＣ  ソース
ＤＮ  ドレイン
Ｗ  半導体基板
ＦＧ  フローティングゲート
ＣＧ  コントロール
【図１】
2006040013.tif 000003
【図２】
2006040013.tif 000004
【図３】
2006040013.tif 000005
【図４】
2006040013.tif 000006
【図５】
2006040013.tif 000007
【図６】
2006040013.tif 000008
【図７】
2006040013.tif 000009
【図８】
2006040013.tif 000010
【図９】
2006040013.tif 000011
【図１０】
2006040013.tif 000012
【図１１】
2006040013.tif 000013
【図１２】
2006040013.tif 000014
【図１３】
2006040013.tif 000015
【図１４】
2006040013.tif 000016
【図１５】
2006040013.tif 000017
【図１６】
2006040013.tif 000018
【図１７】
2006040013.tif 000019
【図１８】
2006040013.tif 000020
【図１９】
2006040013.tif 000021
【図２０】
2006040013.tif 000022
【図２１】
2006040013.tif 000023