説明

バッドブロックマークの保存方法

【課題】近年の大容量NAND型フラッシュメモリが増加し、ラージブロックタイプを採用するため、今までのスモールブロックタイプからラージブロックタイプへと書き換える必要が生じてきた。しかし、順次書き込んでいくと、ラージブロックタイプのバッドブロックマークの位置にスモールブロックタイプのデータが書き込まれることになる。そうすると、ラージブロックタイプのブロックは誤って不良と判断される恐れがある。
【解決手段】そこで、スモールブロックタイプからラージブロックタイプへと書き換える際に、双方のバッドブロックマークのある位置のデータを交換することにより、ラージブロックタイプのバッドブロックマークを保存することができる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、バッドブロックマークの保存方法であって、スモールブロックタイプのページをラージブロックタイプのページに書き換えるときに生じるバッドブロックマークの保存に関するものである。
【背景技術】
【0002】
NAND型フラッシュメモリは今までスモールブロックタイプ、すなわち1ページが512バイトのデータ部と16バイトの冗長部で構成され、32ページで1ブロックを構成するものであった。近年は、ラージブロックタイプ、すなわち1ページが2048バイトのデータ部と64バイトの冗長部で構成され、64ページで1ブロックを構成するものが多い。また、それらのブロックが不良か否かを判断する場所であるバッドブロックマークはスモールブロックタイプの場合は冗長部の中ほどから前に、ラージブロックタイプの場合は、データ部の先頭または冗長部の先頭にある。
【0003】
NAND型フラッシュメモリがその大容量の必要性からスモールブロックタイプからラージブロックタイプへと変遷しつつある。しかし、過去のソフトウェア資産はスモールブロックタイプの構成にあわせて書かれているものが多く、近年の大容量NAND型フラッシュメモリが採用するラージブロックタイプの構成にあわせて書き換える必要が生じてきた。
【0004】
このようにバッドブロックマークの保存に関する文献は無いが、フラッシュメモリに関するバッドブロックについては下記文献のように存在する。
【特許文献1】特開2006−286179
【特許文献2】特開2006−031696
【発明の開示】
【発明が解決しようとする課題】
【0005】
そこで、スモールブロックタイプのページのデータをラージブロックタイプのページのデータに書き移すとき、幸いにもラージブロックタイプの1ページがスモールブロックタイプの4ページの大きさに相当するため、ラージブロックタイプ1ページにスモールブロックタイプ4ページを順次書き込んでいけばよかった。しかし、順次書き込んでいくと、ラージブロックタイプのバッドブロックマークの位置にスモールブロックタイプのデータが書き込まれることになる。そうすると、ラージブロックタイプのブロックは誤って不良と判断される恐れがある。
【課題を解決するための手段】
【0006】
課題を解決するため、本発明はスモールブロックタイプのデータをラージブロックタイプのデータに置換するとき、ラージブロックタイプのバッドブロックマークのある位置は、スモールブロックタイプのデータをFFに書き換え、その位置にあったデータはスモールブロックタイプの冗長部に書く、または、ラージブロックタイプのバッドブロックマークのある位置は、スモールブロックタイプのデータを書き込まずスキップし、以下を続けて書き込むようにした。なおここで、その位置にあったデータはスモールブロックタイプの冗長部に書くとしたが、常に決められた位置にしたほうが機械的な作業にできるため。冗長部の中ほどより前にあるスモールブロックタイプのバッドブロックマークの位置に固定するのが望ましい。またこのようにすると、逆にラージブロックタイプのページから順次読み出し、スモールブロックタイプのページに戻すときは、ラージブロックタイプのバッドブロックマークのある位置のデータとスモールブロックタイプのバッドブロックマークのある位置のデータを交換して出せばよい。
【発明の効果】
【0007】
NAND型フラッシュメモリの大規模化に伴いスモールブロックタイプのページをラージブロックタイプのページに置き換えることが多くなり、そのときにラージブロックタイプのバッドブロックマークを保存しながら書き換えることが可能となる。また、ラージブロックタイプのページからスモールブロックタイプのページに変換するときも、逆の動作により機械的に変換することが可能で間違いを起すことが無い。
【実施例1】
【0008】
図1はスモールブロックタイプの構成図であって、ページは512バイトのデータ部と16バイトの冗長部で構成される。またブロックは32ページで構成される。スモールブロックが不良か否かを示す位置は冗長部の任意の1バイトを使用し、全てのページの同一位置に設定する。例えば、冗長部の前から6バイト目に位置することが多い。
【0009】
図2はラージブロックタイプの構成図であって、ページは2048バイトのデータ部と64バイトの冗長部で構成される。またブロックは64ページで構成される。ラージブロックが不良か否かを示す位置はデータ部または冗長部の任意の1バイトを使用し、全てのページの同一位置に設定する。例えば、データ部の先頭位置にあったり、冗長部の先頭位置にあったりすることが多い。
【0010】
ここで、スモールブロックタイプのページをラージブロックタイプのページに移し変えることを考える。ラージブロックタイプの1ページの大きさはスモールブロックタイプの4ページの大きさに相当するから、スモールブロックタイプの4ページをちょうど、ラージブロックタイプの1ページに収めることができる。
【0011】
次に、ラージブロックタイプのバッドブロックマーク位置が図3のようにデータ部の先頭位置にあるときを考えると、先ず第1のスモールブロックタイプのページの第1バイト目をラージブロックタイプのページの第1バイト目には書かず、スモールブロックタイプ自身の冗長部の中のバッドブロックマークのある位置に書き込む。ラージブロックタイプの第1バイト目のデータはFFとし、次にスモールブロックタイプのページの第2バイト目はラージブロックタイプのページの第2バイト目に書き込む。続いて、スモールブロックタイプのページの第3バイト目はラージブロックタイプのページの第3バイト目に書き込み、後はそのまま続けて書き込む。
【0012】
第1のスモールブロックタイプのページを全部書き込んだら、つぎに第2のスモールブロックタイプのページを書き込み、最後の第4のスモールブロックタイプのページまで順次書き込む。
【実施例2】
【0013】
次の例として、ラージブロックタイプのバッドブロックマーク位置が図4のように冗長部の先頭位置にあるときを考えると、先ず第1のスモールブロックタイプのページはそのままラージブロックタイプのページの第1バイト目から書き込み、順次第2のスモールブロックタイプのページ、第3のスモールブロックタイプのページと書き込んでいく、最後に第4のスモールブロックタイプのページを書き込むときは、ラージブロックタイプのページの冗長部の先頭に来たとき、そこはラージブロックタイプのバッドブロックマークのある位置だからそこに書くデータはFFとし、そこに書く予定であったデータはそれ自身の冗長部の中のバッドブロックマークのある位置に書き込む。そうして、第4のスモールブロックタイプのページを書き終えて終了とする。
【0014】
以上は、バッドブロックマークの位置に違いのある2つに例を実施例で挙げた。また、どちらもスモールブロックタイプのページを順次書き込んでいく場合の実施例である。次に、請求項2のようにラージブロックタイプのバッドブロックマークのある位置には何もせずにスキップして以降にデータを書き込む方法もある。何れにしろ、ラージブロックタイプのバッドブロックマークの位置にはFFのデータが保存される。一方、データ部と冗長部の書き方においても、このような書き込み順序ではなく、各スモールブロックタイプのページのデータ部だけを、第1のスモールブロックタイプのデータ部、第2のスモールブロックタイプのデータ部の順に書き込んでいき、第4のスモールブロックタイプのデータ部を書き込んだ後、第1のスモールブロックタイプの冗長部、第2のスモールブロックタイプの冗長部と書き込み、最後に第4のスモールブロックタイプの冗長部を書き込む方法もある。いずれにしてもラージブロックタイプのバッドブロックマークのある位置に来ると、そのデータをFFとし、そのとき書くべきであってデータはそのスモールブロックタイプのバッドブロックマークのある位置に書き込むか、またはバッドブロックマークのある位置をスキップするかによりラージブロックタイプのバッドブロックマークは保存される。
【0015】
図3はラージブロックタイプのバッドブロックマークがデータ部の先頭にある例で、スモールブロックタイプのページをラージブロックタイプのページに置き換えたときの図であり、ラージブロックタイプのページのバッドブロックマークの位置にはFFが保存され、そこに書くべきデータは第1番目のスモールブロックタイプのバッドブロックマークのある位置に移した。
【0016】
図4はラージブロックタイプのバッドブロックマークが冗長部の先頭にある例で、スモールブロックタイプのページをラージブロックタイプのページに置き換えたときの図であり、ラージブロックタイプのページのバッドブロックマークの位置にはFFが保存され、そこに書くべきデータは第4番目のスモールブロックタイプのバッドブロックマークのある位置に移した。
【産業上の利用可能性】
【0017】
NAND型フラッシュメモリがその大容量の必要性からスモールブロックタイプからラージブロックタイプへと変遷しつつある。しかし、過去のソフトウェア資産はスモールブロックタイプの構成にあわせて書かれているものが多く、近年の大容量NAND型フラッシュメモリが採用するラージブロックタイプの構成にあわせて書き換える事は必要不可欠であり、産業上の利用価値は極めて高いものである。
【図面の簡単な説明】
【0018】
【図1】スモールブロックタイプのブロックの構成図である。
【図2】ラージブロックタイプのブロックの構成図である。
【図3】スモールブロックタイプをラージブロックタイプに書き移した説明図である(実施例1)
【図4】スモールブロックタイプをラージブロックタイプに書き移した説明図である(実施例2)
【符号の説明】
【0019】
1 スモールブロックタイプのページ
2 スモールブロックタイプのデータ部
3 スモールブロックタイプの冗長部
4 スモールブロックタイプのバッドブロックマークのある位置
5 ラージブロックタイプのページ
6 ラージブロックタイプのデータ部
7 ラージブロックタイプの冗長部
8 ラージブロックタイプのバッドブロックマークのある位置(1例)
9 ラージブロックタイプのバッドブロックマークのある位置(その他の例)
10 第4のスモールブロックタイプのバッドブロックマークのある位置
11 第1のスモールブロックタイプのバッドブロックマークのある位置

【特許請求の範囲】
【請求項1】
NAND型フラッシュメモリのバッドブロックマークの保存方法において、複数のスモールブロックタイプのページをラージブロックタイプのページに置換するとき、ラージブロックタイプのバッドブロックマークのある位置は、スモールブロックタイプのデータをFFに書き換え、その位置にあったデータはスモールブロックタイプの冗長部に書くことを特徴とするバッドブロックマークの保存方法。
【請求項2】
NAND型フラッシュメモリのバッドブロックマークの保存方法において、複数のスモールブロックタイプのページをラージブロックタイプのページに置換するとき、ラージブロックタイプのバッドブロックマークのある位置は、スモールブロックタイプのデータを書き込まずスキップし、以下を続けて書き込むことを特徴とするバッドブロックマークの保存方法。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2008−269499(P2008−269499A)
【公開日】平成20年11月6日(2008.11.6)
【国際特許分類】
【出願番号】特願2007−114800(P2007−114800)
【出願日】平成19年4月24日(2007.4.24)
【出願人】(302004850)株式会社京都ソフトウェアリサーチ (7)
【Fターム(参考)】