JP4580724B2 - 不揮発性メモリの制御方法 - Google Patents

不揮発性メモリの制御方法 Download PDF

Info

Publication number
JP4580724B2
JP4580724B2 JP2004284557A JP2004284557A JP4580724B2 JP 4580724 B2 JP4580724 B2 JP 4580724B2 JP 2004284557 A JP2004284557 A JP 2004284557A JP 2004284557 A JP2004284557 A JP 2004284557A JP 4580724 B2 JP4580724 B2 JP 4580724B2
Authority
JP
Japan
Prior art keywords
data
zone
stored
block
area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2004284557A
Other languages
English (en)
Other versions
JP2006099419A (ja
Inventor
清治 溝口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tietech Co Ltd
Original Assignee
Tietech Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tietech Co Ltd filed Critical Tietech Co Ltd
Priority to JP2004284557A priority Critical patent/JP4580724B2/ja
Publication of JP2006099419A publication Critical patent/JP2006099419A/ja
Application granted granted Critical
Publication of JP4580724B2 publication Critical patent/JP4580724B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)

Description

本発明は、フラッシュメモリ等の不揮発性メモリに、高い信頼性にてデータを記憶することができる、不揮発性メモリの制御方法に関する。
近年、フラッシュメモリ等の不揮発性メモリが、種々の製品にて利用されている。例えば図5(A)に、不揮発性メモリの例として512MビットのNAND型フラッシュメモリ(スマートメディア(登録商標))の構造の例を示す。
NAND型フラッシュメモリは、電池を内蔵したSRAMカード等と比較して、可搬型でサイズがより小型でありながら、容量は非常に大きい。このため、例えば0.5秒毎に速度や温度等のデータをリアルタイムに検出しながら記憶するような用途であっても、容量的には余裕のある使い方ができる。また、記憶したデータを持ち運ぶような使い方に適している。
図5(A)に示すように、512MビットのNAND型フラッシュメモリは、4096個のブロックにて構成されており、1個のブロックは32個のページにて構成されている。また1個のページは512バイトのデータ領域と16バイトの冗長領域にて構成されている。データ領域には利用者が所望するデータを記憶することが可能であり、冗長領域は利用者が意識することなく、不揮発性メモリの制御部(CPU等の演算手段)が使用する領域である。
NAND型フラッシュメモリは、データを書き込む場合はページ単位でのみ行うことが可能であり、データを消去する場合はブロック単位でのみ行うことが可能であり、揮発性メモリであるRAM(Random Access Memory)のように、バイト単位で且つ自由な値に書替えを行うことができない。例えば当該不揮発性メモリが消去状態である場合、各ビットは「1」に設定されている。また、各ビットを「1」から「0」に書替えることは可能であるが、「0」から「1」に書替えることはできず、消去状態(各ビットが「1」の状態)から1回書き込むことしかできない。従って、1回書き込みを行った場合、次に書き込む前に消去しなければならない(消去の場合のみ「0」から「1」に変更が可能)。
そこで、この不揮発性メモリに対する従来の制御方法では、新たなデータを追加して記憶する場合、図5(A)に示すように、冗長領域に「書き込み済みフラグ」「論理アドレス」「フラグ1(ブロックデータ無効化フラグ)」等に当該ブロックに記憶されているデータの設定状態を記憶させておき、制御部が次々とブロックを変更し、新たなデータを追加して記憶している。
このため、有効なデータが記憶されている最新のブロックはどのブロックであるか、また、そのブロックの論理アドレスの値は何であるか等が非常に重要であり、これらの情報は冗長領域に記憶されている。
フラッシュメモリ等の不揮発性メモリの書き込み及び消去には比較的長い時間(例えば数ms以上)を必要とするため、書き込み中に電源遮断やリセット等が発生する可能性がある。このような場合でも、記憶されているデータの信頼性を確保することが重要である。
そこで、特許文献1に記載の従来技術では、図5(B)に示すように冗長領域に「フラグ2(ブロックデータ有効化フラグ)」「新旧判定用カウンタ」を新たに設けるとともに、制御部による制御(制御ソフト)にて「書き込み済みフラグ」「論理アドレス」「フラグ1(ブロックデータ無効化フラグ)」「フラグ2(ブロックデータ有効化フラグ)」「新旧判定用カウンタ」を用いて複雑な処理を行い、書き込み中の電源遮断やリセット等が発生しても、記憶されているデータの信頼性を確保することができる、不揮発性メモリの制御方法が提案されている。
特開2003−015929号公報
電源遮断やリセット等は、どのタイミングで発生するか予測することは不可能であり、空きブロックにデータを書き移して冗長領域に論理アドレスを書き込んだ後、旧ブロックを消去する前に発生する場合もある。このような場合、2つのブロックの冗長領域に同一の論理アドレスが存在することになる(論理アドレスの重複が発生する)。データの読み出しまたは書き込み等を行う際、1つの論理アドレスに2つのブロックが割り当てられていては、どちらのブロックのデータを扱えばよいか混乱する。当然のことながら、正常に書き込みが終了した最新のデータを含む側のブロックのデータを扱えばよいのであるが、どちらのブロックが「正常に書き込みが終了した最新のデータを含むブロック」であるか、判断することが困難である。
また、データを書き移し中に電源遮断やリセット等が発生すると、その時点まで蓄積したデータが消失する可能性もある。この問題に対しては、同一データを2箇所のエリアに書き込むことで対策可能であるが、上記の論理アドレスの重複には対処できない。
また、図5(B)に示す特許文献1に記載の従来技術では、冗長領域に「フラグ2(ブロックデータ有効化フラグ)」「新旧判定用カウンタ」を新たに設け、冗長領域の構成を変更するとともに、制御部による制御(制御ソフト)を、冗長領域の変更に合わせて複雑に変更し、「フラグ2」及び「新旧判定用カウンタ」を用いて「正常に書き込みが終了した最新のデータを含むブロック」を判定可能としている。
しかし、冗長領域の構成の変更に伴う制御ソフトの複雑な変更を必要とするため、従来の問題を確実に回避できるか否か、従来では発生しなかった新たな問題が発生しないか否か、充分な机上検討及び動作確認等が必要となり、開発期間が長くなる可能性がある。
本発明は、このような点に鑑みて創案されたものであり、論理アドレスの重複の発生に対して、より容易な方法にて適切な処理を行うことが可能な不揮発性メモリの制御方法を提供することを課題とする。
上記課題を解決するための手段として、本発明の第1発明は、請求項1に記載されたとおりの不揮発性メモリの制御方法である。
請求項1に記載の不揮発性メモリの制御方法は、記憶領域が複数のブロックにて構成されているとともに、各ブロックは複数のページで構成され、ページが消去状態である場合にページ単位で書き込みを行うことが可能であるとともに、データを消去する場合はブロック単位でのみ消去することが可能であり、各ページはデータを記憶可能なデータ領域と、当該データ領域に記憶されているデータの状態に関する情報と論理アドレスとを少なくとも記憶可能な冗長領域とで構成された、不揮発性メモリの制御方法である。
不揮発性メモリの記憶領域に、複数のブロックを含む第1ゾーン及び第2ゾーンの異なるゾーンを割り付け、第1ゾーンにデータを記憶させるとともに、第2ゾーンにもデータを記憶させて、データを2重に記憶し、前記不揮発性メモリに、現在まで記憶されているデータに続けて新たなデータを記憶する場合、対象ゾーン内において現在までのデータが記憶されているブロックからデータを読み出して、新たに記憶すべきデータを追加して対象ゾーン内の別のブロックに書き込むとともに冗長領域に論理アドレスを書き込み、その後、現在までのデータが記憶されていた対象ゾーン内のブロックを消去する一連の処理を、第1ゾーンにおいて行うとともに、第2ゾーンにおいても行う。
そして第1ゾーンと第2ゾーンに記憶されているデータの異常の有無を判定する場合、第1ゾーンと第2ゾーンとのそれぞれの冗長領域をチェックして、一方のゾーンの冗長領域の論理アドレスに重複が発見され、且つ他方のゾーンの冗長領域の論理アドレスに重複が発見されなかったとき、重複が発見された側のゾーンを初期化し、重複が発見されなかった側のゾーンに記憶されているデータを前記初期化したゾーンに複写する。
請求項1に記載の不揮発性メモリの制御方法を用いれば、データを記憶する際は、第1ゾーンと第2ゾーンの双方に、同じデータを記憶していく。制御部は同時に異なるゾーンにデータを書き込むまたは消去することはできないため、一方のゾーンにおいて書き込みまたは消去の途中で電源遮断等が発生して、当該一方のゾーンにおいて論理アドレスに重複が発生しても、他方のゾーンには、「正常に書き込みが終了した最新のデータを含むブロック」が論理アドレスの重複が発生することなく残されている。
従って、この場合は論理アドレスの重複が発生していない他方のゾーンのデータを扱えばよい。また、論理アドレスの重複が発生した一方のゾーンは初期化して、初期化した一方のゾーンに他方のゾーンに記憶されているデータを書き移し、新たなデータを記憶する際は、第1ゾーンと第2ゾーンの双方に同じデータを記憶していく処理を行う。
このように、より容易な方法(データ記憶時は第1ゾーンと第2ゾーンの双方に同じデータを記憶し、異常判定時は正常と判定された側のゾーンのデータを利用する方法)にて、論理アドレスの重複の発生に対して、適切な処理を行うことができる。
以下に本発明を実施するための最良の形態を図面を用いて説明する。以下、NAND型フラッシュメモリ(スマートメディア(登録商標))を不揮発性メモリの例として、本発明の不揮発性メモリの制御方法について説明する。
●[ブロック構成と、不揮発性メモリの記憶領域の構成(図1)]
図1(A)は本発明の不揮発性メモリの制御方法を実現するための構成を示すブロック図である。制御部10は、CPU12とRAM14とで構成され、当該制御部10にて不揮発性メモリ20へのデータの入出力を制御する。
制御部10は、外部からデータの書き込みあるいは読み出しが要求されると、不揮発性メモリ20へのデータの記憶あるいはデータの読み出しを行う。
図1(B)は、不揮発性メモリ20の記憶領域の構成を示している。
不揮発性メモリ20の記憶領域は複数のブロック(物理ブロック1〜n)にて構成されている。また、各ブロックは例えば32個(第1所定数)のページにて構成され、各ページはデータ領域と冗長領域とを有している。1個のデータ領域は例えば512バイトの容量を有しており、1個の冗長領域は例えば16バイトの容量を有している。
データ領域には、利用者が所望するデータを記憶することが可能であり、冗長領域はCPU12等の制御部10が使用する領域である。
本実施の形態にて説明する不揮発性メモリの制御方法では、冗長領域に「論理アドレス」と「利用可否情報(対応するブロックが、書き込み及び消去の利用が可能か否かを示した情報)」とを少なくとも記憶可能である。また、図5(A)に示した従来技術のように、「書き込み済みフラグ」「フラグ1」をも記憶可能としてもよい。
図1(C)は、「物理アドレス」と「論理アドレス」について説明する図である。
物理アドレスは、不揮発性メモリ20の記憶領域の先頭から最終部に向かって順番に設定された絶対アドレスである。従って、不揮発性メモリ20の物理ブロックにどのような順番でデータが記憶されていても不変のアドレスである。
これに対して論理アドレスは、不揮発性メモリ20の記憶領域において、どの物理ブロックから、どの物理ブロックに向けてデータが記憶されているかを示した相対アドレスである。例えば図1(C)の例に示すように、物理アドレス0〜4に、Data4、Data0、Data2、Data1、Data3と記憶されていても、制御部10は論理アドレスの順にデータを読み出すことで、Data0、Data1、Data2、Data3、Data4の順に読み出すことができる。
NAND型フラッシュメモリでは前述したように、データを書き込む場合、消去状態から1回書き込むことしかできない。現在記憶されているデータに続けて新たなデータを記憶する場合、現在までのデータが記憶されているブロックからデータを読み出して、新たに記憶すべきデータを追加して、空きブロック(消去済みのブロック)に書き込むとともに冗長領域に論理アドレスを書き込む。その後、現在までのデータが記憶されていたブロックを消去する。これにより、図1(C)の例に示すように、物理アドレス順にデータが整列しなくなるため、論理アドレスが必要になる。
ここで、例えば「論理アドレス:3」のブロックに現在までのデータD[1]〜D[j]までが記憶されており、D[j]に続けて新たなデータD[j+1]を記憶する場合を例に説明する。
(1)読み出し処理
制御部10は、「論理アドレス:3」のブロックから現在まで記憶されているデータ(D[1]〜D[j])を読み出し、RAM14上に記憶する(図4(A)の「(1)複写」を参照)。なお、論理アドレス等、書き移す際に必要な情報も冗長領域から読み出してRAM14上に記憶する。
(2)追加処理
次に制御部10は、RAM14上にてD[j]に続けてD[j+1](新たに記憶すべきデータ)を記憶する(図4(A)の「(2)追加」を参照)。
(3)書き込み処理
そして制御部10は、(消去状態の)空きブロックに、RAM14上に記憶しているデータを書き込む(図4(A)の「(3)書き込み」を参照)。なお、データを書き込むとともに、論理アドレスを含む冗長領域も書き込む。これにより、新たに書き込まれたブロックが、新たな「論理アドレス:3」のブロックとなる。
(4)消去処理
その後(空きブロックへの書き込みが正常に終了した後)、制御部10は、旧「論理アドレス:3」ブロック(D[1]〜D[j]までが記憶されているブロック)を消去し、新「論理アドレス:3」ブロック(D[1]〜D[j+1]までが記憶されているブロック)を残す(図4(A)の「(4)消去」を参照)。
ここで、上記の(3)書き込み処理までが正常に終了した時点で且つ(4)消去処理が終了する前に、電源遮断やリセット等が発生した場合、「論理アドレス:3」が2つのブロックに存在することになる。本発明の不揮発性メモリの制御方法は、このような「論理アドレスの重複」の発生に対して、適切な処理を行うものである。
●[本実施の形態における記憶領域の構成(図2(A)〜(C))]
図2(A)に示すように、本実施の形態では、不揮発性メモリ20の記憶領域に少なくとも2つのゾーンを割り付け、同一のデータをそれぞれのゾーンに記憶することで2重に記憶する。図2(A)に示す例では、物理ブロックA1〜B1のm個のブロックを有するゾーン1(第1ゾーンに相当する)と、物理ブロックA2〜B2のm個のブロックを有するゾーン2(第2ゾーンに相当する)の、2つのゾーンを割り付けた例を示している。
後述する説明では、このゾーン1及び2を用いた制御方法について説明する。
なお、不揮発性メモリ20にNAND型フラッシュメモリを用いた場合、ゾーンの位置及びサイズが、NAND型フラッシュメモリの規格及び使用するNAND型フラッシュメモリの容量で決められている。例えば容量が32MバイトのNAND型フラッシュメモリの場合、1024ブロック(16Mバイト)のゾーンを2個とすることが現在の規格では設定されている。
図2(B)及び(C)は、64MバイトのNAND型フラッシュメモリの記憶領域(全体)とゾーンの様子を示したものである(この場合、4個のゾーンに分割される)。本実施の形態では、規格に基づいたゾーンを使用したが、独自のゾーンを設定してもよい。
次に図2(B)及び(C)を用いて不揮発性メモリ20の初期化について説明する。
一般的なOS(Operating System、例えばWindows(登録商標))では、NAND型フラッシュメモリを初期化(論理フォーマット)した場合、図2(B)に示すように、先頭エリアを管理領域(FAT領域及びディレクトリ領域)として確保し、その他の領域がデータ領域として確保される。管理領域はOSが使用する領域であり、データ領域に記憶されたデータファイルの配置位置等、データ領域に記憶されたデータをOSが管理するための情報が記憶される。また、データ領域はゾーンをまたいで設定されてしまう。
これに対して図2(C)に示す、本実施の形態の独自の初期化の方法では、ゾーン毎に管理領域とデータ領域を確保する。例えばゾーン1内のデータ領域に記憶されたデータの管理にOSが必要とする情報は、ゾーン1内の管理領域に記憶される。本実施の形態では、NAND型フラッシュメモリを、図2(C)に示す独自の形式に初期化(論理フォーマット)している。
なお、特許文献1に記載の従来の技術では、冗長領域の内部の構成をNAND型フラッシュメモリの規格とは異なる構成にしているため、物理フォーマットから独自の方法となる。このため、市販のパーソナルコンピュータ等にデータが記憶されたNAND型フラッシュメモリを接続してデータを読み出そうとしても、物理フォーマットの形式からして異なるため、NAND型フラッシュメモリを認識することすらできず、データも読み出すことができない。
これに対して本実施の形態に説明する方法では、冗長領域の内部の構成はNAND型フラッシュメモリの規格に一致させているため、物理フォーマットは独自の方法でなく、規格に沿った方法で行うことができる。このため、市販のパーソナルコンピュータ等にデータが記憶されたNAND型フラッシュメモリを接続した際、NAND型フラッシュメモリを正しく認識することができる。ただし、論理フォーマットは独自の方法を用いているため、当該独自の論理フォーマットに対応したアプリケーションソフトを用いれば、市販のパーソナルコンピュータ等にてデータを正しく読み出すことができる。
●[本実施の形態における制御部の処理(図3〜図4)]
図3(A)は、新たなデータを記憶する処理の手順を示している。
例えば、D[1]〜D[j]までが記憶されている「論理アドレス:3」ブロックに、新たなデータD[j+1]を追加して記憶する場合、制御部10は、ステップS12にて、ゾーン1内の領域において、上記の(1)読み出し処理、(2)追加処理、(3)書き込み処理、(4)消去処理を、順に実行する(図4(A)を参照)。
続いて制御部10は、ステップS14にて、今度はゾーン2内の領域において、上記の(1)読み出し処理、(2)追加処理、(3)書き込み処理、(4)消去処理を、順に実行する。
例えば0.5秒毎にデータが発生し、当該データを不揮発性メモリ20に記憶しておきたい場合、データが発生する毎に上記の処理を実行する(図4(B)を参照)。
処理の途中で電源遮断やリセット等が発生しなければ、以上の処理により、新たなデータD[j+1]は、ゾーン1内の「論理ブロック:3」と、ゾーン2内の「論理ブロック:3」に記憶される。
なお、ステップS12の処理において、(3)書き込み処理を正常に終了し、且つ(4)消去処理の途中で電源遮断やリセット等が発生した場合、ゾーン1内で論理アドレスの重複が発生する(この場合、「論理アドレス:3」が重複する)。
また、ステップS14の処理において、(3)書き込み処理を正常に終了し、且つ(4)消去処理の途中で電源遮断やリセット等が発生した場合、ゾーン2内で論理アドレスの重複が発生する(この場合、「論理アドレス:3」が重複する)。
図3(B)は、論理アドレス重複異常の判定及び復旧を行う処理の手順を示している。例えば、電源が投入された場合の初期化処理等のタイミングにて、本手順の処理を実行する。
制御部10は、ステップS22にて、ゾーン1内の冗長領域を検索して、論理アドレスの重複の有無を判定する。重複がない(Yes)と判定した場合、ステップS26に進み、重複がある(No)と判定した場合、ステップS24に進む。
ステップS24では、ゾーン2内の冗長領域を検索して、論理アドレスの重複の有無を判定する。重複がある(No)と判定した場合は、ゾーン1とゾーン2のどちらも論理アドレスの重複が発生していることになるので、ステップS32にて、ゾーン1内の記憶領域を初期化(物理フォーマット)し、ステップS34にて、ゾーン2内の記憶領域を初期化(物理フォーマット)して処理を終了する(この場合は別途、論理フォーマットを行う必要がある)。
なお、ステップS32、S34、S42、S52の初期化(物理フォーマット)では、利用可否情報が「否」と判定されているブロックはフォーマットを行わない。これにより、利用可否情報が「否」と判定されているブロックは、その状態(利用可否情報が「否」の状態)を維持することができる(なお、イレーズを行うと、利用可否情報が「可」の状態に変更されてしまう)。
NAND型フラッシュメモリは、データの記憶を正常に行うことができない不良ブロックが製造段階で充分に防止することが困難であり、不良ブロック(利用可否情報が「否」のブロック)を使用しないようにしている。
ステップS24にて、重複がない(Yes)と判定した場合、ステップS42に進む。この場合は、ゾーン1内に論理アドレスの重複があり、ゾーン2内には論理アドレスの重複がない場合である。ステップS42では、ゾーン1内の記憶領域を初期化(上記の物理フォーマット)してステップS44に進む。そしてステップS44にて、ゾーン2内のデータ(データ領域に記憶されているデータと、冗長領域に記憶されている情報(論理アドレス情報等))を、初期化したゾーン1に複写して処理を終了する。なお、各ゾーン内のデータは、あらかじめ図2(C)にて説明した独自の論理フォーマットが行われている。これにより、ゾーンをまたぐことなく(それぞれのゾーン内の閉じた記憶領域で)、データの記憶、及び記憶したデータに関する管理情報の記憶を行うことができ、あるゾーンの内容を別のゾーンにそのまま複写(論理フォーマットごと複写)することを容易に行うことができる。ただし、複写先のブロックの利用可否情報が「否」と判定されている場合は、別の正常なブロックを検索して複写する必要はある。
各ゾーンは図2(C)に示す独自の形式に初期化されているため、ゾーン内のデータ領域に記憶されているデータ、及び当該ゾーン内の管理領域に記憶されているデータを別のゾーンに複写しても、複写先のゾーン内のデータを正常に読み出すことができる(ステップS54の処理の場合も同様)。なお、図2(B)に示す形式に初期化されている場合、例えばゾーン2の内容をゾーン3に複写しただけでは、管理領域の内容が更新されないため、ゾーン3内のデータを正常に読み出すことができない場合がある。
ステップS26に進んだ場合、ゾーン2の冗長領域を検索して、論理アドレスの重複の有無を判定する。重複がある(No)と判定した場合、ステップS52に進む。この場合は、ゾーン1内に論理アドレスの重複がなく、ゾーン2内に論理アドレスの重複がある場合である。ステップS52では、ゾーン2内の記憶領域を初期化(上記の物理フォーマット)してステップS54に進む。そしてステップS54にて、ゾーン1内のデータ(データ領域に記憶されているデータと、冗長領域に記憶されている情報(論理アドレス情報等))を、初期化したゾーン2に複写して処理を終了する。
また、ステップS26にて、重複がない(Yes)と判定した場合は、ゾーン1内とゾーン2内の双方に論理アドレスの重複がない場合であり、処理を終了する。
以上に説明した本実施の形態における不揮発性メモリの制御方法では、冗長領域の構成は従来の冗長領域の構成から変更していないため、不揮発性メモリへの書き込み、消去等の基本的な処理は従来と同じである。従って制御部10の制御ソフトの再利用率が高く、短い期間で開発することが可能である。
本発明の不揮発性メモリの制御方法は、本実施の形態で説明した構成、処理等に限定されず、本発明の要旨を変更しない範囲で種々の変更、追加、削除が可能である。例えば、記憶領域をゾーン1とゾーン2の2つに設定せず、3つ以上に設定し、各ゾーンに同一のデータを記憶し、論理アドレスの重複の判定では、論理アドレスの重複が複数のゾーンで検出されても、論理アドレスの重複が検出されなかったゾーン内のデータを、前記重複が検出された複数のゾーンに複写するようにしてもよい。
本実施の形態にて説明した処理手順は、図3(A)及び(B)にて説明した処理手順に限定されるものではない。
冗長領域に設定する情報は、本実施の形態にて説明した情報に限定されるものではなく、種々の情報を設定することができる。
また、本実施の形態の説明に用いた数値は一例であり、この数値に限定されるものではない。
本発明の不揮発性メモリの制御方法は、本実施の形態にて説明したNAND型フラッシュメモリに対する制御方法に限定されるものではなく、種々の不揮発性メモリに適用することができる。
不揮発性メモリの制御方法を実現するためのブロック構成、記憶領域の構成、物理アドレスと論理アドレスを説明する図である。 本発明の不揮発性メモリの制御方法における記憶領域の設定と、記憶領域の初期化(論理フォーマット)の例を説明する図である。 本発明の不揮発性メモリの制御方法の処理手順の例を説明する図である。 本発明の不揮発性メモリの制御方法において、新たなデータを記憶する様子を説明する図である。 従来の不揮発性メモリの制御方法を説明する図である。
符号の説明
10 制御部
12 CPU
14 RAM
20 不揮発性メモリ

Claims (1)

  1. 記憶領域が複数のブロックにて構成されているとともに、各ブロックは複数のページで構成され、ページが消去状態である場合にページ単位で書き込みを行うことが可能であるとともに、データを消去する場合はブロック単位でのみ消去することが可能であり、各ページはデータを記憶可能なデータ領域と、当該データ領域に記憶されているデータの状態に関する情報と論理アドレスとを少なくとも記憶可能な冗長領域とで構成された、不揮発性メモリの制御方法であって、
    不揮発性メモリの記憶領域に、複数のブロックを含む第1ゾーン及び第2ゾーンの異なるゾーンを割り付け、第1ゾーンにデータを記憶させるとともに、第2ゾーンにもデータを記憶させて、データを2重に記憶し、
    前記不揮発性メモリに、現在まで記憶されているデータに続けて新たなデータを記憶する場合、
    対象ゾーン内において現在までのデータが記憶されているブロックからデータを読み出して、新たに記憶すべきデータを追加して対象ゾーン内の別のブロックに書き込むとともに冗長領域に論理アドレスを書き込み、その後、現在までのデータが記憶されていた対象ゾーン内のブロックを消去する一連の処理を、第1ゾーンにおいて行うとともに、第2ゾーンにおいても行い、
    第1ゾーンと第2ゾーンに記憶されているデータの異常の有無を判定する場合、
    第1ゾーンと第2ゾーンとのそれぞれの冗長領域をチェックして、一方のゾーンの冗長領域の論理アドレスに重複が発見され、且つ他方のゾーンの冗長領域の論理アドレスに重複が発見されなかったとき、重複が発見された側のゾーンを初期化し、重複が発見されなかった側のゾーンに記憶されているデータを前記初期化したゾーンに複写する、
    ことを特徴とする不揮発性メモリの制御方法。


JP2004284557A 2004-09-29 2004-09-29 不揮発性メモリの制御方法 Expired - Fee Related JP4580724B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004284557A JP4580724B2 (ja) 2004-09-29 2004-09-29 不揮発性メモリの制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004284557A JP4580724B2 (ja) 2004-09-29 2004-09-29 不揮発性メモリの制御方法

Publications (2)

Publication Number Publication Date
JP2006099419A JP2006099419A (ja) 2006-04-13
JP4580724B2 true JP4580724B2 (ja) 2010-11-17

Family

ID=36239167

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004284557A Expired - Fee Related JP4580724B2 (ja) 2004-09-29 2004-09-29 不揮発性メモリの制御方法

Country Status (1)

Country Link
JP (1) JP4580724B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5364807B2 (ja) * 2011-06-08 2013-12-11 パナソニック株式会社 メモリコントローラ及び不揮発性記憶装置
KR101826047B1 (ko) 2011-09-28 2018-02-07 삼성전자주식회사 저장 장치 및 그 구동 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004139503A (ja) * 2002-10-21 2004-05-13 Matsushita Electric Ind Co Ltd 記憶装置及びその制御方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0728707A (ja) * 1993-07-09 1995-01-31 Shinko Electric Co Ltd 不揮発性メモリのデ−タ保護方法
JP3070539B2 (ja) * 1997-09-30 2000-07-31 ソニー株式会社 外部記憶装置、データ処理装置及びデータ処理方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004139503A (ja) * 2002-10-21 2004-05-13 Matsushita Electric Ind Co Ltd 記憶装置及びその制御方法

Also Published As

Publication number Publication date
JP2006099419A (ja) 2006-04-13

Similar Documents

Publication Publication Date Title
EP2003569B1 (en) Flash memory controller
JP4037605B2 (ja) 不揮発性メモリユニットのコントローラ、同コントローラを有するメモリシステム及び不揮発性メモリユニットの制御方法
KR100531192B1 (ko) 비휘발성 메모리의 제어방법
US6865658B2 (en) Nonvolatile data management system using data segments and link information
JP4722839B2 (ja) メモリ制御回路、不揮発性記憶装置及びメモリ制御方法
US6789158B2 (en) Method of rewriting program in a flash microcomputer
JP4713867B2 (ja) メモリコントローラ,メモリ装置及びメモリコントローラの制御方法
US20100082878A1 (en) Memory controller, nonvolatile storage device, nonvolatile storage system, and data writing method
CN102163133A (zh) 针对具有可擦除/可重写存储器使用带有主机装置的一次或数次可编程存储器的方法及装置
JP4046877B2 (ja) 一括消去型不揮発性メモリおよび携帯電話
JPWO2009004674A1 (ja) 記憶装置、ディスク装置、書込み判定方法、制御装置
JP4158526B2 (ja) メモリカード及びメモリへのデータ書き込み方法
JP4157501B2 (ja) 記憶装置
JP2005222202A (ja) 不揮発性記憶装置のデータ保護方法
JP4661369B2 (ja) メモリコントローラ
JP4794530B2 (ja) 半導体装置および携帯電話
JP4580724B2 (ja) 不揮発性メモリの制御方法
KR100654344B1 (ko) 플래시 메모리를 이용한 기억장치 및 그 에러 복구 방법
JP2004326523A (ja) 書き換え可能な不揮発性メモリを備えた記憶装置及び記憶装置用不揮発性メモリの制御方法
JP4031693B2 (ja) 不揮発性メモリおよびこれを有したデータ記憶装置
KR20050009045A (ko) 플래시 메모리를 이용한 기억장치 및 그 에러 복구 방법
JP2012037971A (ja) メモリコントローラ及びメモリコントローラを備える不揮発性メモリシステム、並びに不揮発性メモリの制御方法
JP4539621B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法
JP2007199846A (ja) メモリ制御装置およびメモリ制御方法
JP2002244935A (ja) 記憶管理装置および記憶管理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070511

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100805

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100810

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100830

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130903

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees