(57)【要約】単一論理ブロックを２つ以上の物理ブロックにスプリットする方法および装置が開示される。本発明の一態様によれば、不揮発性メモリの複数の物理ブロックを、論理ブロック要素を含む論理ブロックに関連付ける方法は、論理ブロック要素を少なくとも第１論理セットおよび第２論理セットにグループ分けすることを含む。第１論理セットに関連付けられたデータは、第１物理ブロックに提供される。および、第２論理セットに関連付けられたデータは、第２物理ブロックに提供される。
2006504198.tif 000002
【特許請求の範囲】
【請求項１】
不揮発性メモリの複数の物理ブロックを、複数の論理ブロック要素を含む論理ブロックに関連付ける方法であって、
前記複数の論理ブロック要素をセットに実質的にグループ分けし、前記セットが、第１論理セットおよび第２論理セットを含むステップと、
前記第１論理セットに関連付けられたデータを前記複数の物理ブロックの第１物理ブロックに提供するステップと、
前記第２論理セットに関連付けられたデータを前記複数の物理ブロックの第２物理ブロックに提供するステップとを含む、方法。
【請求項２】
前記第１物理ブロックが、複数の物理ブロック要素を含み、
前記第１物理ブロックに含まれる前記複数の物理ブロック要素を第１物理セットおよび第２物理セットにグループ分けするステップをさらに含む、請求項１に記載の方法。
【請求項３】
前記第１論理セットに関連付けられた前記データを前記第１物理ブロックに提供するステップが、
前記データを前記第１物理セットに書き込むステップを含む、請求項２に記載の方法。
【請求項４】
前記第２物理ブロックが、複数の物理ブロック要素を含み、
前記第２物理ブロックに含まれる前記複数の物理ブロック要素を第３物理セットおよび第４物理セットにグループ分けするステップをさらに含む、請求項３に記載の方法。
【請求項５】
前記第２論理セットに関連付けられたデータを前記第２物理ブロックに提供するステップが、
前記データを前記第３物理セットに書き込むステップを含む、請求項４に記載の方法。
【請求項６】
前記第１論理セットおよび前記第２論理セットが、ほぼ同じサイズであり、前記第１物理セットおよび前記第３物理セットが、ほぼ同じサイズである、請求項５に記載の方法。
【請求項７】
前記第１論理セットに関連付けられた新データを書き込むステップをさらに含み、前記第１論理セットに関連付けられた前記新データを書き込むステップが、前記新データを前記第２物理セットに書き込むことを含む、請求項５に記載の方法。
【請求項８】
前記第１物理ブロックがフルであるときを判定するステップと、
前記第１物理ブロックがフルであると判定されるとき、前記データの少なくともいくつかおよび前記新データを第３物理ブロックに書き込むステップであって、前記第３物理ブロックが、物理要素の第５物理セットおよび物理要素の第６物理セットを含む、ステップとを含み、前記データの少なくともいくつかおよび前記新データを前記第３物理ブロックに書き込むステップが、前記データおよび前記新データの少なくともいくつかを前記第５物理セットに書き込むことを含む、請求項７に記載の方法。
【請求項９】
前記データの前記少なくともいくつかが、前記データに含まれる直近に記憶されたデータを含む、請求項８に記載の方法。
【請求項１０】
前記第２論理セットに関連付けられた新データを書き込むステップをさらに含み、前記第２論理セットに関連付けられた前記新データを書き込むステップが、前記新データを前記第４物理セットに書き込むことを含む、請求項５に記載の方法。
【請求項１１】
前記第２物理ブロックがフルであるときを判定するステップと、
前記第２物理ブロックがフルであると判定されるとき、前記データの少なくともいくつかおよび前記新データを第３物理ブロックに書き込むステップであって、前記第３物理ブロックが、物理要素の第５物理セットおよび物理要素の第６物理セットを含む、ステップとを含み、前記データの少なくともいくつかおよび前記新データを前記第３物理ブロックに書き込むステップが、前記データの前記少なくともいくつかおよび前記新データを前記第５物理セットに書き込むことを含む、請求項１０に記載の方法。
【請求項１２】
前記データの前記少なくともいくつかが、前記データに含まれる直近に記憶されたデータを含む、請求項１０に記載の方法。
【請求項１３】
前記論理ブロックが、１度に１つの論理要素にアクセスされる、請求項１に記載の方法。
【請求項１４】
前記論理ブロックが、ファイル割付け表およびルートディレクトリの一方に関連付けられる、請求項１に記載の方法。
【請求項１５】
前記論理ブロックが、ファイルシステムに関連付けられ、前記第１物理ブロックおよび前記第２物理ブロックが、フラッシュメモリに関連付けられる、請求項１に記載の方法。
【請求項１６】
前記論理要素が、論理ページであり、前記物理要素が、物理ページである、請求項１に記載の方法。
【請求項１７】
複数の物理ブロックを、複数の論理ブロックページを含む論理ブロックに関連付けるシステムであって、
前記複数の物理ブロックを含む不揮発性メモリと、
前記複数の論理ブロックページを、第１論理セットおよび第２論理セットを含むセットに実質的にグループ分けするためのコード装置と、
前記第１論理セットに関連付けられたデータを、前記複数の物理ブロックの第１物理ブロックに提供するコード装置と、
前記第２論理セットに関連付けられたデータを、前記複数の物理ブロックの第２物理ブロックに提供するコード装置と、
前記コード装置を記憶するメモリ装置とを備える、システム。
【請求項１８】
前記第１物理ブロックが、複数の物理ブロックページを含み、
前記第１物理ブロックに含まれる前記複数の物理ブロックページを第１物理セットおよび第２物理セットにグループ分けするコード装置をさらに含む、請求項１７に記載のシステム。
【請求項１９】
前記第１論理セットに関連付けられた前記データを前記第１物理ブロックに提供する前記コード装置が、
前記データを前記第１物理セットに書き込むコード装置を含む、請求項１８に記載のシステム。
【請求項２０】
前記第２物理ブロックが、複数の物理ブロックページを含み、
前記第２物理ブロックに含まれる前記複数の物理ブロックページを第３物理セットおよび第４物理セットにグループ分けするコード装置をさらに含む、請求項１９に記載のシステム。
【請求項２１】
前記第２論理セットに関連付けられた前記データを前記第２物理ブロックに提供するコード装置が、
前記データを前記第３物理セットに書き込むコード装置を含む、請求項２０に記載のシステム。
【請求項２２】
前記第１論理セットに関連付けられた新データを書き込むコード装置をさらに含み、前記第１論理セットに関連付けられた前記新データを書き込む前記コード装置が、前記新データを前記第２物理セットに書き込むコード装置を含む、請求項２１に記載のシステム。
【請求項２３】
前記第１物理ブロックがフルであるときを判定するコード装置と、
前記第１物理ブロックがフルであると判定されるとき、前記データの少なくともいくつかおよび前記新データを第３物理ブロックに書き込むコード装置であって、前記第３物理ブロックが、物理ページの第５物理セットおよび物理ページの第６物理セットを含む、コード装置とをさらに含み、前記データの前記少なくともいくつかおよび前記新データを前記第３物理ブロックに書き込むコード装置が、前記データの少なくともいくつかおよび前記新データを前記第５物理セットに書き込むコード装置を含む、請求項２２に記載のシステム。
【請求項２４】
前記データの少なくともいくつかを書き込む前記コード装置が、前記データに含まれる直近に記憶されたデータを書き込むコード装置を含む、請求項２３に記載のシステム。
【請求項２５】
複数の物理ブロックを、複数の論理ブロック要素を含む論理ブロックに関連付けるシステムであって、
前記複数の物理ブロックを含む不揮発性メモリと、
前記複数の論理ブロック要素を、第１論理セットおよび第２論理セットを含むセットに実質的にグループ分けする手段と、
前記第１論理セットに関連付けられたデータを前記複数の物理ブロックの第１物理ブロックに提供する手段と、
前記第２論理セットに関連付けられたデータを前記複数の物理ブロックの第２物理ブロックに提供する手段とを備える、システム。
【請求項２６】
前記第１物理ブロックが、複数の物理ブロック要素を含み、
前記第１物理ブロックに含まれる前記複数の物理ブロックを第１物理セットおよび第２物理セットにグループ分けする手段をさらに含む、請求項２５に記載のシステム。
【請求項２７】
前記第１論理セットに関連付けられた前記データを前記第１物理ブロックに提供する前記手段が、
前記データを前記第１物理セットに書き込む手段を含む、請求項２６に記載のシステム。
【請求項２８】
前記第２物理ブロックが、複数の物理ブロック要素を含み、システムが、前記第２物理ブロックに含まれる前記複数の物理ブロック要素を第３物理セットおよび第４物理セットにグループ分けする手段をさらに含み、前記第２論理セットに関連付けられた前記データを前記第２物理ブロックに提供する前記手段が、前記データを前記第３物理セットに書き込む手段を含む、請求項２７に記載のシステム。
【請求項２９】
前記第１論理セットに関連付けられた新データを書き込む手段であって、前記第１論理セットに関連付けられた前記新データを書き込む手段が、前記新データを前記第２物理セットに書き込む手段を含む、手段と、
前記第１物理ブロックがフルであるときを決定する手段と、
前記第１物理ブロックがフルであると判定されるとき、前記データの少なくともいくつかおよび前記新データを第３物理ブロックに書き込む手段であって、前記第３物理ブロックが、物理要素の第５物理セットおよび物理要素の第６物理セットを含む手段とを含み、前記データの前記少なくともいくつかおよび前記新データを前記第３物理ブロックに書き込む前記コード装置が、前記データの前記少なくともいくつかおよび前記新データを前記第５物理セットに書き込むコード装置を含む、請求項２８に記載のシステム。
【請求項３０】
前記データの少なくともいくつかを書き込む前記手段が、前記データに含まれる直近に記憶されたデータを書き込む手段を含む、請求項２９に記載のシステム。
【請求項３１】
複数の論理要素を含む論理ブロックを識別するように構成される第１構成要素と、
第１物理ブロックおよび第２物理ブロックを含む第２構成要素であって、前記第１物理ブロックおよび前記第２物理ブロックが、それぞれ、複数の物理要素を含む、第２構成要素と、
前記論理ブロックに含まれる前記複数の論理要素を第１論理セットおよび第２論理セットに実質的に分割するように構成される第３構成要素であって、前記第１論理セットに関連付けられた内容を前記第１物理ブロックに書き込み、かつ前記第２論理セットに関連付けられた内容を前記第２物理ブロックに書き込むようにさらに構成される第３構成要素とを備える、メモリ装置。
【請求項３２】
前記第１物理ブロックが、前記複数の物理要素の第１セットの物理要素および前記複数の物理要素の第２セットの物理要素を含み、前記第３構成要素が、前記第１論理セットに関連付けられた内容を前記第１セットの物理要素に書き込むように構成される、請求項３１に記載のメモリ装置。
【請求項３３】
前記第３構成要素が、前記第１論理セットに関連付けられた更新内容を前記第２セットの物理要素に書き込むようにさらに構成される、請求項３２に記載のメモリ装置。
【請求項３４】
前記第３構成要素が、前記第１物理ブロックが実質的にフルであるときを判定し、前記第１物理ブロックが実質的にフルであると判定されるとき、前記内容の少なくともいくつかおよび前記更新内容を第３物理ブロックにコピーするようにさらに構成される、請求項３３に記載のメモリ装置。
【請求項３５】
前記第３構成要素が、前記第１物理ブロックを消去するようにさらに構成される、請求項３４に記載のメモリ装置。
【請求項３６】
前記第３物理ブロックが、物理要素の第３セットおよび物理要素の第４セットを含み、前記内容の前記少なくともいくつかおよび前記更新内容が、前記物理要素の第３セットにコピーされる、請求項３４に記載のメモリ装置。
【請求項３７】
前記第２物理ブロックが、前記複数の物理要素の第１セットの物理要素および前記複数の物理要素の第２セットの物理要素を含み、前記第３構成要素が、前記第２論理セットに関連付けられた内容を前記第１セットの物理要素に書き込むように構成される、請求項３１に記載のメモリ装置。
【請求項３８】
前記第３構成要素が、前記第２論理セットに関連付けられた更新内容を前記第２セットの物理要素に書き込むようにさらに構成される、請求項３７に記載のメモリ装置。
【請求項３９】
前記複数の論理要素が、複数の論理ページであり、前記複数の物理要素が、複数の物理ページである、請求項３１に記載のメモリ装置。
【請求項４０】
不揮発性メモリシステムのファイルシステムに関連付けられた第１ブロックをスプリットする方法であって、
前記第１ブロックを第１部分および第２部分に実質的に区分するステップと、
前記第１ブロックの前記第１部分を、前記不揮発性メモリシステムの不揮発性メモリに関連付けられた第２ブロックに関連付けるステップと、
前記第１ブロックの前記第２部分を、前記不揮発性メモリに関連付けられた第３ブロックに関連付け、前記第１ブロックの前記第１部分に関連付けられた内容が更新されるとき、前記第１部分に関連付けられた更新内容が、前記第２ブロックに書き込まれ、前記第１ブロックの前記第２部分に関連付けられた内容が更新されるとき、前記第２部分に関連付けられた更新内容が、前記第３ブロックに書き込まれるステップとを含む、方法。
【請求項４１】
前記第１ブロックを前記第１部分および前記第２部分に実質的に区分するステップが、前記第１ブロックを前記第１部分および前記第２部分にほぼ均等に区分することを含む、請求項４０に記載の方法。
【請求項４２】
前記第１ブロックの前記第１部分を前記第２ブロックに関連付けるステップが、前記第１ブロックの前記第１部分に関連付けられた内容を前記第２ブロックの第１領域に書き込むことを含み、前記第２ブロックが、前記第１領域および第２領域を含む、請求項４１に記載の方法。
【請求項４３】
前記第１ブロックの前記第１部分に関連付けられた前記内容が更新されるとき、前記第１部分に関連付けられた更新内容が、前記第２ブロックの前記第２領域に書き込まれる、請求項４２に記載の方法。
【請求項４４】
前記第２ブロックの前記第２領域が実質的にフルであるときを判定するステップと、
前記内容および前記第１ブロックの前記第１部分に関連付けられた前記更新内容を第４ブロックの第１部分に書き込み、前記第４ブロックが、第１パートおよび第２パートを含むように構成されるステップとをさらに含む、請求項４３に記載の方法。
【請求項４５】
前記第１ブロックの前記第２部分を前記第３ブロックと関連付けるステップが、前記第１ブロックの前記第１部分に関連付けられた内容を前記第３ブロックの第１領域に書き込むことを含み、前記第３ブロックが、前記第１領域および前記第２領域を含む、請求項４１に記載の方法。
【請求項４６】
前記第１ブロックの前記第１部分に関連付けられた前記内容が更新されるとき、前記第１部分に関連付けられた前記更新内容が、前記第３ブロックの前記第２領域に書き込まれる、請求項４５に記載の方法。
【請求項４７】
前記第１ブロック、前記第２ブロック、および前記第３ブロックが、実質的に同じサイズである、請求項４１に記載の方法。
【請求項４８】
前記第１ブロックが、関連付けられたページ数を有し、前記第２ブロックが、前記関連付けられたページ数を有し、前記第３ブロックが、前記関連付けられたページ数を有する、請求項４１に記載の方法。
【請求項４９】
前記第１ブロックが、論理ブロックであり、前記第２ブロックが物理ブロックであり、前記第３ブロックが物理ブロックである、請求項４１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、同時係属米国特許出願１０／２８１７３９（代理人整理番号第ＳＡＮＤＰ０２３／ＳＤＫ０３６６．０００ＵＳ）、名称「ＷＥＡＲ  ＬＥＶＥＬＩＮＧ  ＩＮ  ＮＯＮ−ＶＯＬＡＴＩＬＥ  ＳＴＯＲＡＧＥ  ＳＹＳＴＥＭＳ」、２００２年１０月２８日出願、同時係属米国特許出願１０／２８１６７０（代理人整理番号第ＳＡＮＤＰ０２５／ＳＤＫ０３６６．００２ＵＳ）、名称「ＴＲＡＣＫＩＮＧ  ＴＨＥ  ＭＯＳＴ  ＦＲＥＱＵＥＮＴＬＹ  ＥＲＡＳＥＤ  ＢＬＯＣＫＳ  ＩＮ  ＮＯＮ−ＶＯＬＡＴＩＬＥ  ＭＥＭＯＲＹ  ＳＹＳＴＥＭＳ」、２００２年１０月２８日出願、同時係属米国特許出願１０／２８１８２４（代理人整理番号第ＳＡＮＤＰ０２６／ＳＤＫ０３６６．００３）、名称「ＴＲＡＣＫＩＮＧ  ＴＨＥ  ＬＥＡＳＴ  ＦＲＥＱＵＥＮＴＬＹ  ＥＲＡＳＥＤ  ＢＬＯＣＫＳ  ＩＮ  ＮＯＮ−ＶＯＬＡＴＩＬＥ  ＭＥＭＯＲＹ  ＳＹＳＴＥＭＳ」、２００２年１０月２８日出願、同時係属米国特許出願１０／２８１８５５（代理人整理番号第ＳＡＮＤＰ０２９／ＤＳＫ０４１０．０００ＵＳ）、名称「ＭＥＴＨＯＤ  ＡＮＤ  ＡＰＰＡＲＡＴＵＳ  ＦＯＲ  ＧＲＯＵＰＩＮＧ  ＰＡＧＥＳ  ＷＩＴＨＩＮ  Ａ  ＢＬＯＣＫ」、２００２年１０月２８日出願、および同時係属米国特許出願１０／２８１７６２（代理人整理番号第ＳＡＮＤＰ０３０／ＳＤＫ０４１６．０００ＵＳ）、名称「ＭＥＴＨＯＤ  ＡＮＤ  ＡＰＰＲＡＴＵＳ  ＦＯＲ  ＲＥＳＯＬＶＩＮＧ  ＰＨＹＳＩＣＡＬ  ＢＬＯＣＫＳ  ＡＳＳＯＣＩＡＴＥＤ  ＷＩＴＨ  Ａ  ＣＯＭＭＯＮ  ＬＯＧＩＣＡＬ  ＢＬＯＣＫ」、２００２年１０月２８日出願に関する。これらは、それぞれ、参照によって完全に本明細書に組み込まれている。
【０００２】
本発明は、一般に、大量デジタルデータ記憶システムに関する。より具体的には、本発明は、フラッシュメモリに関連付けられたファイル割付け表（ＦＡＴ）ブロックがコピーされる回数を低減するシステムおよび方法に関する。
【背景技術】
【０００３】
フラッシュメモリ記憶システムなどの不揮発性メモリの使用は、そのようなメモリシステムのコンパクトな物理的サイズ、および不揮発性メモリが反復して再プログラムされる能力のために、増大している。フラッシュメモリ記憶システムのコンパクトな物理的サイズにより、ますます普及している装置においてそのような記憶システムを使用することが促進される。フラッシュメモリ記憶システムを使用する装置には、デジタルカメラ、デジタルカムコーダ、デジタル音楽プレーヤ、手持ち式パーソナルコンピュータ、および大域的位置決め装置があるが、これに限定されるものではない。フラッシュメモリ記憶システムに含まれる不揮発性メモリを反復して再プログラムする能力により、フラッシュメモリ記憶システムが使用および再使用されることが可能になる。
【０００４】
一般に、フラッシュメモリ記憶システムは、フラッシュ・メモリ・カードおよびフラッシュ・メモリ・チップ・セットを含むことが可能である。フラッシュ・メモリ・チップ・セットは、フラッシュメモリ構成要素および制御装置構成要素を一般に含む。通常、フラッシュ・メモリ・チップ・セットは、埋込みシステムに組み立てられるように構成されることが可能である。そのようなアセンブリまたはホストシステムの製造業者は、通常、構成要素形態のフラッシュメモリ、ならびに他の構成要素を獲得し、次いでフラッシュメモリおよび他の構成要素をホストシステムに組み立てる。
【０００５】
図１ａに示されるように、ファイルシステム内では、メモリ１０が、システム領域またはディレクトリ領域１２およびデータ領域１４に分割される。システム領域１２は、ルートディレクトリおよびファイル割付け表（ＦＡＴ）を一般に含み、一方、データファイルは、データ領域１４に通常含まれる。ファイルシステムは、１度に１ページなど、セクタのデータをシステム領域１２に書き込み、一方、１度に複数ページなど、クラスタのデータをデータ領域１４に書き込むことが可能である。各クラスタのサイズは、一般に、データ領域１４に関連付けられるファイルの最小サイズであり、変更されることが可能である。たとえば、ウィンドウズ（登録商標）またはＤＯＳシステムを実行しているシステム全体では、クラスタは、約４ページを含むようにサイズ決めされることが可能である。
【０００６】
システム領域１２では、一般に、１度に１セクタまたは１ページにアクセスされる。すなわち、たとえばＦＡＴに対して、更新がシステム領域１２において実施されるとき、ほぼ１ページのみが、任意の所与の時間に更新される。論理ブロック、またはファイルシステムに関連付けられるブロックに関連するあらゆる更新が、論理ブロックにマッピングされる物理ブロックに有効に伝播される。図１ｂは、論理ブロックと物理ブロックとの間のマッピングを示す概略図である。論理ブロック５２は、論理ブロック５２に関連付けられたページが更新されるとき、更新が物理ブロック５４に書き込まれるように、それぞれが物理ブロック５４のページにマッピングされる複数のページを含む。
【０００７】
ページが更新されるとき、そのページに対応する物理ブロックが、そのページを組み込む新しい物理ブロックに有効に再コピーされ、当初の物理ブロックは消去される。一般に、単一ページがブロック内において更新されるたびに物理ブロックの全内容をコピーすることは、比較的大量のオーバーヘッドを使用し、時間がかかることになる可能性がある。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
したがって、システムブロックに関連付けられたページが更新されることを効率的に可能にする方法および装置が所望される。すなわち、計算リソースの大量の使用を必要とせずに、ほぼ唯一の単一ページが、内部において任意の所与の時間に再書き込みされるブロックが有効に更新されることを可能にするプロセスおよびシステムが必要である。
【課題を解決するための手段】
【０００９】
本発明は、論理ブロックを２つ以上の物理ブロックにスプリットするシステムおよび方法に関する。本発明の一態様によれば、不揮発性メモリの複数の物理ブロックを、論理ブロック要素を含む論理ブロックに関連付ける方法は、論理ブロック要素を少なくとも第１論理セットおよび第２論理セットにグループ分けすることを含む。第１論理セットに関連付けられたデータが、第１物理ブロックに提供され、第２論理セットに関連付けられたデータが、第２物理ブロックに提供される。
【００１０】
一実施形態では、第１物理ブロックは、物理ブロック要素を含み、方法は、第１物理ブロックに含まれる複数の物理ブロック要素を第１物理セットおよび第２物理セットにグループ分けすることをも含む。次いで、第１論理セットに関連付けられたデータが、第１物理セットに書き込まれることが可能である。そのような実施形態では、方法は、第１論理セットに関連付けられた更新データを書き込むことが、更新データを第２物理セットに書き込むことを含むように、第１論理セットに関連付けられた新データを書き込むことでもあるとすることが可能である。
【００１１】
１度に４ページ未満に一般にアクセスされる論理ブロックを複数の物理ブロックにスプリットすることによって、フラッシュ・メモリ・システム全体がフォーマットされるとき、論理ブロックに関連付けられた物理ブロックのそれぞれは、実質的に部分的にのみフルであるが、その理由は、論理ブロックデータの一部が、複数の物理ブロックのそれぞれに書き込まれることが可能であるからである。各物理ブロックが実質的に部分的にのみフルであるとき、各物理ブロックは、本質的に、更新が書き込まれることが可能である利用可能なページを有する。したがって、フルの物理ブロックを空の物理ブロックに再書き込みする必要性は、更新に関する情報を物理ブロックの利用可能なページに書き込む能力によって低減される。利用可能なページがすべて埋められた後にのみ、物理ブロックが再書き込みされることが必要である可能性がある。したがって、物理ブロックが他の物理ブロックにコピーされ、消去される回数を低減することによって、システム全体の性能が改善されることが可能である。
【００１２】
本発明の他の態様によれば、メモリ装置が、複数の論理要素を含む論理ブロックを識別する第１構成要素、第１物理ブロックおよび第２物理ブロックを含む第２構成要素、および第３構成要素を含む。第２構成要素に含まれる第１物理ブロックおよび第２物理ブロックは、それぞれ、複数の物理要素を含む。第３構成要素は、論理ブロックに含まれる複数の論理要素を第１論理セットおよび第２論理セットに実質的に分割し、また、第１論理セットに関連付けられた内容を第１物理ブロックに書き込み、第２論理セットに関連付けられた内容を第２物理ブロックに書き込む。一実施形態では、第１物理ブロックは、複数の物理要素の第１セットの物理要素および複数の物理セットの第２セットの物理要素を含み、第３構成要素は、第１論理セットに関連付けられた内容を第１セットの物理要素に書き込むように構成される。
【００１３】
他の実施形態では、第２物理ブロックは、複数の物理要素の第１セットの物理要素、および複数の物理要素の第２セットの物理要素を含み、第３構成要素は、第２論理セットに関連付けられた内容を第１セットの物理要素に書き込むように構成される。そのような実施形態では、第３構成要素は、第２論理セットに関連付けられた更新内容を第２セットの物理要素にさらに書き込む。
【００１４】
本発明の他の態様によれば、論理ブロックとすることが可能であり、不揮発性メモリシステムのファイルシステムに関連付けられた第１ブロックをスプリットする方法は、第１ブロックを第１部分および第２部分に実質的に区分することと、不揮発性メモリシステムの不揮発性メモリに関連付けられた、物理ブロックとすることが可能である第２ブロックに第１ブロックの第１部分を関連付けることと、第１ブロックの第２部分を不揮発性メモリに関連付けられた第３ブロックに関連付けることとを含む。第１ブロックの第１部分に関連付けられた内容が更新されるとき、第１部分に関連付けられた更新内容は、第２ブロックに書き込まれ、第１ブロックの第２部分に関連付けられた内容が更新されるとき、第２部分に関連付けられた更新内容は、第３ブロックに書き込まれる。
【００１５】
本発明のこれらおよび他の利点は、以下の詳細に記述を読み、かつ図面の様々な図を研究することにより、明らかになるであろう。
本発明は、添付の図面と関連して取り入れられる以下の記述を参照することによって、最適に理解されることが可能である。
【発明を実施するための最良の形態】
【００１６】
単一ページが更新されるときに更新ページを記憶する、またはそうでない場合は再書き込みするために必要であるオーバーヘッドの量を低減することにより、埋込み不揮発性メモリチップを有するホストシステム全体などのシステム全体をより効率的に動作させることが可能になる。物理ブロックに関連付けられた単一ページが更新されるたびに、ファイル割付け表（ＦＡＴ）に関連付けられたブロックなど、物理ブロック全体をコピーすることは、大量のオーバーヘッドを使用する可能性があり、その結果、比較的非効率となる可能性がある。
【００１７】
論理ＦＡＴブロックなどの論理ブロックを２つの物理ブロックなどの複数の物理ブロックにスプリットすることによって、フラッシュ・メモリ・システム全体がフォーマットされるとき、論理ブロックに関連付けられた物理ブロックのそれぞれは、実質的に部分的にのみフルである。すなわち、論理ブロックデータの一部が、複数の物理ブロックのそれぞれに書き込まれることが可能である。例として、スプリットされた３２ページの論理ページのページ０〜１５が、第１の３２ページの物理ブロックのページ０〜１５に書き込まれることが可能であり、一方、論理ブロックのページ１６〜３１が、第２の３２ページの物理ブロックの０〜１５ページに書き込まれることが可能である。各物理ブロックが実質的に部分的にのみフルであるとき、各物理ブロックは、本質的に、更新を書き込むことが出来る利用可能なページを有する。
【００１８】
論理ブロックに関連付けられた新しいページが書き込まれる場合、ページは、適切な物理ブロックに関連付けられた利用可能なページに書き込まれることが可能である。たとえば、論理ページ０〜１５の範囲の新しい論理ページが書き込まれるとき、新しい論理ページは、第１物理ブロックのページ１６〜３１の第１の利用可能ページに書き込まれることが可能である。同様に、論理ページ１６〜３１の範囲の新しい論理ページが書き込まれるとき、新しい論理ページは、第２物理ブロックのページ１６〜３１の第１の利用可能ページに書き込まれることが可能である。物理ブロックが利用可能なページの供給を枯渇させるまで、物理ブロックの内容を新しい物理ブロックにコピーする必要は事実上ない。したがって、物理ブロックに関連するコピー動作の数は、著しく低減されることが可能であり、システム全体の性能が改善されることが可能である。
【００１９】
スプリットブロックの使用は、少なくとも２つの物理ブロックをいずれか１つの論理ブロックと一般に関連付けるが、スプリットブロックは、ＦＡＴブロックまたはルートディレクトリに関連付けられたブロックなどのブロックについて通常実施されるので、システムにおいて必要とされる追加の物理ブロックの数は、比較的少ない。ＦＡＴブロックおよびルート・ディレクトリ・ブロックは、スプリットブロックとして実現されるとき、スプリットブロックを使用する結果である性能の利点と比較して、ごく少ないオーバーヘッドを消費する。たとえば、ブロックあたり６４ページを有する１２８メガバイトＮＡＮＤフラッシュチップは、ＦＡＴおよびルートディレクトリについてわずかに２つのブロックを必要とすることが可能である。実質的にわずかに２つの追加のブロックが、スプリットブロックの実施において必要とされる可能性がある。
【００２０】
フラッシュ・メモリ・システム、またはより一般的には、スプリットブロックの使用から利益を得ることが可能である不揮発性メモリ装置は、フラッシュ・メモリ・カードおよびチップセットを一般に含む。通常、フラッシュ・メモリ・システムは、ホストシステムがデータをフラッシュ・メモリ・システムに書き込む、またはデータをフラッシュ・メモリ・システムから読み取ることが可能であるように、ホストシステムと関連して使用される。しかし、いくつかのフラッシュ・メモリ・システムは、図２ｃに関して以下で議論されるように、埋込みフラッシュメモリ、および埋込みフラッシュメモリの制御装置として実質的に作用するホスト上で実行されるソフトウエアを含む。図２ａを参照すると、コンパクトフラッシュ（登録商標）・メモリ・カードなどの不揮発性メモリを含む全体的なホストシステムが、記述される。ホストまたはコンピュータシステム１００は、マイクロプロセッサ１０８、ランダム・アクセス・メモリ（ＲＡＭ）１１２、および入力／出力回路１１６が通信することを可能にするシステムバス１０４を一般に含む。ホストシステム１００は、例示のために図示されていない表示装置およびネットワーキング装置など、他の構成要素を一般に含むことが可能であることを理解されたい。
【００２１】
一般に、ホストシステム１００は、静止画像情報、音声情報、およびビデオ画像情報などを含むが、これに限定されない情報を得ることができる可能性がある。そのような情報は、実時間で得られることが可能であり、無線方式でホストシステム１００に送信されることが可能である。ホストシステム１００は、実質的にあらゆるシステムとすることが可能であるが、ホストシステム１００は、通常、デジタルカメラ、ビデオカメラ、セルラ通信装置、オーディオプレーヤ、またはビデオプレーヤなどのシステムである。しかし、ホストシステム１００は、一般に、データまたは情報を記憶し、データまたは情報を取り出すほぼあらゆるシステムとすることが可能であることを理解されたい。
【００２２】
ホストシステム１００は、データを得るのみである、またはデータを取り出すのみであるシステムとすることも可能である。すなわち、ホストシステム１００は、一実施形態では、データを記憶する専用システムとすることが可能であり、または、ホストシステム１００は、データを読み取る専用システムとすることが可能である。例として、ホストシステム１００は、データを書き込む、またはデータを記憶するようにのみ構成されるメモリライタとすることが可能である。代替として、ホストシステム１００は、データを読み取る、または取り出すように通常構成され、データを取得するようには構成されないＭＰ３プレーヤなどの装置とすることが可能である。
【００２３】
一実施形態では、取外し可能不揮発性メモリ装置である不揮発性メモリ装置１２０が、情報を記憶するためにバス１０４とインタフェースするように構成される。随意選択のインタフェースブロック１３０により、不揮発性メモリ装置１２０がバス１０４と間接的にインタフェースすることが可能に出来る。存在するとき、入力／出力回路ブロック１１６は、当業者になら理解されるように、バス１０４に対する負荷を低減するように作用する。不揮発性メモリ装置１２０は、不揮発性メモリ１２４および随意選択メモリ制御システム１２８を含む。一実施形態では、不揮発性メモリ装置１２０は、単一チップまたはダイの上において実施されることが可能である。代替として、不揮発性メモリ装置１２０は、マルチチップモジュールの上において、またはチップセットを形成することが可能であり、かつ不揮発性メモリ装置１２０として共に使用されることが可能である複数の離散構成要素の上において実施されることが可能である。不揮発性メモリ装置１２０の一実施形態が、図２ｂを参照して以下でより詳細に記述される。
【００２４】
たとえばＮＡＮＤフラッシュメモリなどのフラッシュメモリである不揮発性メモリ１２４が、必要に応じてデータにアクセスして読み取ることが可能であるように、データを記憶するように構成される。不揮発性メモリ１２４に記憶されたデータは、適宜、消去されることも可能であるが、不揮発性メモリ１２４のいくつかのデータは、消去不可能とすることが出来ることを理解されたい。データを記憶する、データを読み取る、およびデータを消去するプロセスは、一般に、メモリ制御システム１２８によって制御され、または、メモリ制御システム１２８が存在しないときは、マイクロプロセッサ１０８によって実行されるソフトウエアによって制御される。不揮発性メモリ１２４の動作は、本質的に不揮発性メモリ１２４のセクションをほぼ一様に劣化させることによって、不揮発性メモリ１２４の寿命がほぼ最大になるように管理されることが可能である。
【００２５】
不揮発性メモリ装置１２０は、随意選択メモリ制御システム１２８、すなわち制御装置を含むとして一般的に記述された。しばしば、不揮発性メモリ装置１２０は、不揮発性メモリ１２４およびメモリ制御システム１２８について別々のチップ、すなわち制御装置機能を含むことが可能である。例として、ＰＣカード、コンパクトフラッシュ（登録商標）カード、マルチメディアカード、およびセキュアデジタルカードを含むがこれに限定されない不揮発性メモリ装置が、別々のチップ上で実施されることが可能である制御装置を含むが、他の不揮発性メモリ装置は、別々のチップ上で実施される制御装置を含まないことが可能である。不揮発性メモリ装置１２０が別々のメモリおよび制御装置のチップを含まない実施形態では、メモリおよび制御装置の機能は、当業者には理解されるように、単一チップに統合されることが可能である。代替として、メモリ制御システム１２８の機能は、上記で議論されたように、たとえば不揮発性メモリ装置１２０がメモリ制御装置１２８を含まない実施形態では、マイクロプロセッサ１０８によって提供されることが可能である。
【００２６】
図２ｂを参照すると、本発明の実施形態による不揮発性メモリ装置１２０が、より詳細に記述される。上述されたように、不揮発性メモリ装置１２０は、不揮発性メモリ１２４を含み、メモリ制御システム１２８を含むことが可能である。メモリ１２４および制御システム１２８、または制御装置は、不揮発性メモリ装置１２０の主要構成要素とすることが可能であるが、たとえば、メモリ１２４が埋込みＮＡＮＤ装置であるとき、不揮発性メモリ装置１２０は、制御システム１２８を含まないことが可能である。メモリ１２４は、半導体基板の上に形成されたメモリセルのアレイとすることが可能であり、メモリセルの個々の記憶要素について２つ以上の電荷レベルの１つを記憶することによって、データの１つまたは複数のビットが、個々のメモリセルに記憶される。不揮発性フラッシュ電気的消去可能プログラム可能読取り専用メモリ（ＥＥＰＲＯＭ）が、そのようなシステムの共通タイプのメモリの例である。
【００２７】
存在するとき、制御システム１２８は、データを記憶するためにメモリシステムを使用しているホストコンピュータまたは他のシステムとバス１５で通信する。バス１５は、一般に、図２ａのバス１０４の一部である。制御システム１２８は、メモリ１２４の動作も制御し、メモリ１２４は、ホストによって提供されるデータを書き込み、ホストによって要求されたデータを読み取り、動作メモリ１２４において様々なハウスキーピング機能を実施するために、メモリ・セル・アレイ１１を含むことが可能である。制御システム１２８は、関連する不揮発性ソフトウエアメモリ、様々な論理回路などを有する汎用マイクロプロセッサを一般に含む。１つまたは複数の状態機械も、特有のルーチンの動作を制御するために、しばしば含まれる。
【００２８】
メモリ・セル・アレイ１１は、通常、制御システム１２８またはマイクロプロセッサ１０８によってアドレスでコーダ１７を経てアドレス指定される。デコーダ１７は、制御システム１２８によってアドレス指定されているデータをプログラムする、データを読み取る、またはメモリセルのグループを消去するために、適切な電圧をアレイ１１のゲートおよびビット線に印加する。追加の回路１９が、セルのアドレス指定されたグループにプログラムされているデータに依拠するアレイの要素に印加された電圧を制御するプログラミングドライバを含む。回路１９は、メモリセルのアドレス指定されたグループからデータを読み取るのに必要な感知増幅器および他の回路をも含む。アレイ１１にプログラムされるデータ、またはアレイ１１から最近読み取られたデータは、制御システム１２８内のバッファメモリ２１に通常記憶される。制御システム１２８は、コマンドおよび状況データなどを一時的に記憶する様々なレジスタをも通常含む。
【００２９】
アレイ１１は、多数のＢＬＯＣＫ０〜Ｎのメモリセルに分割される。フラッシュＥＥＰＲＯＭシステムに一般的であるように、ブロックは、通常、消去の最小単位である。すなわち、各ブロックは、共に消去される最小数のメモリセルを含む。各ブロックは、いくつかのページに通常分割される。当業者には理解されるように、ページは、プログラミングの最小単位とすることが可能である。すなわち、基本的なプログラミング動作は、メモリセルの１ページの最小限にデータを書き込み、またはそれからデータを読み取る。データの１つまたは複数のセクタが、各ページ内に通常記憶される。図２ｂに示されるように、１つのセクタは、ユーザデータおよびオーバーヘッドデータを含む。オーバーヘッドデータは、セクタのユーザデータから計算されたエラー補正コード（ＥＣＣ）を通常含む。制御システム１５の一部２３が、データがアレイ１１にプログラムされているとき、ＥＣＣを計算し、また、データがアレイ１１から読み取られているとき、ＥＣＣを検査する。代替として、ＥＣＣは、それらが属するユーザデータとは異なるページ、または異なるブロックに記憶される。
【００３０】
セクタまたはユーザデータは、磁気ディスクドライブのセクタのサイズに対応して、通常５１２バイトである。オーバーヘッドデータは、通常、追加の１６バイトである。データの１つのセクタが、各ページに含まれることがもっとも一般的であるが、代わりに、２つ以上のセクタが、ページを形成することが可能である。任意の数のページが、ブロックを形成することが一般に可能である。例として、ブロックは、８ページから最高で５１２、１０２４、またはそれを超えるページから形成されることが可能である。ブロックの数は、望ましいデータ記憶能力をメモリシステムに提供するように選択される。アレイ１１は、いくつかのサブアレイ（図示せず）に通常分割され、それぞれは、様々なメモリ動作の実行において並行の程度を増大させるために、互いにある程度独立に動作するある割合のブロックを含む。複数サブアレイの使用の例が、参照によって本明細書に完全に組み込まれている米国特許第５８９０１９２号において記載されている。
【００３１】
一実施形態では、不揮発性メモリは、ホストシステムなどのシステムに埋め込まれる。図２ｃは、埋め込まれた不揮発性メモリを含むホストシステムの概略図である。ホストまたはコンピュータシステム１５０は、ホストシステム１５０の構成要素（図示せず）の中でも、マイクロプロセッサ１５８、ＲＡＭ１６２、および入力／出力回路１６６が通信することを可能にするシステムバス１５４を一般に含む。フラッシュメモリなどの不揮発性メモリ１７４により、情報をホストシステム１５０内に記憶することが可能になる。インタフェース１８０が、情報が不揮発性メモリ１７４から読み取られる、またはそれに書き込まれることを可能にするために、不揮発性メモリ１７４とバス１５４との間において提供されることが可能である。
【００３２】
不揮発性メモリ１７４は、マイクロプロセッサ１５８によって管理されることが可能であり、マイクロプロセッサ１５８は、不揮発性メモリ１７４を制御するように構成されるソフトウエアおよびファームウエアのどちらかまたは両方を有効に実行する。すなわち、マイクロプロセッサ１５８は、コード装置（図示せず）、すなわちソフトウエアコード装置またはファームウエアコード装置を実行することが可能であり、これにより、不揮発性メモリ１７４を制御することが可能になる。そのようなコード装置は、以下で記述されるように、マイクロプロセッサ１５８内においてＣＰＵと実装されたフラッシュメモリ、または不揮発性メモリ１７４内の別々のフラッシュＲＯＭとすることが可能であり、不揮発性メモリ１７４の物理ブロックをアドレス指定することを可能にすることが出来、また、情報を物理ブロックに記憶する、情報を物理ブロックから読み取る、および情報を物理ブロックから消去することを可能にすることが出来る。
【００３３】
一般に、ユーザがデータを書き込むとき、ユーザは、たとえばフラッシュ・メモリ・カード、またはフラッシュメモリを含む埋込みシステムなど、データを媒体に有効に書き込む。媒体のデータのフォーマットは、通常、ファイルシステムによって組織化される。ファイルシステムは、制御装置に関連付けられたファームウエアまたはソフトウエアによって記憶媒体に関連付けられた物理ブロックにマッピングされる論理ブロック、またはより具体的には、論理ブロックのページにデータを関連付ける。図３は、本発明の実施形態による、論理ブロックを有するファイルシステム、および物理ブロックを有する媒体の概略図である。ファイルシステム３１４の論理ブロック３１０は、任意の数のページ３１８を含む。論理ブロック３１０ａなどの論理ブロックに含まれるページ３１８の数は、消去ユニットのサイズに依拠する。たとえば、最小消去ユニットが約３２ページを含むとき、図示されるように、約３２ページが、論理ブロック３１０ａに含まれることが可能である。
【００３４】
埋込みフラッシュメモリなどの媒体３３４の物理ブロック３３０は、いくつかのページ３３８を含む。当業者には理解されるように、物理ブロック３３０に含まれるページ３３８の数は、通常、論理ブロック３１０に含まれるページ３１８の数と同じである。
【００３５】
データマネジャまたはデータ管理ソフトウエアを使用して、図８に関して以下で議論されるように、論理ブロック３１０が、物理ブロック３３０にマッピングされることが可能である。論理ブロック３１０と物理ブロック３３０との間のマッピングは、それぞれ、１対１マッピング、すなわち、論理ブロックアドレスにおける第１論理ブロック３１０が、論理ブロックアドレスとほぼ同じである物理ブロックアドレスにおける第１物理ブロック３３０ａにマッピングされるマッピングとすることが可能である。しかし、論理ブロック３１０と物理ブロック３３０との間のマッピングは、しばしば、論理ブロックアドレスにおける論理ブロック３１０ａが、第１物理ブロック３３０ａにマッピングされず、代わりに、論理ブロックアドレスとは同じでない物理ブロックアドレスを有する物理ブロック３３０ｃなどの異なる物理ブロックにマッピングされるようなものである。
【００３６】
図４は、本発明の実施形態による、論理ブロックと物理ブロックとの間のマッピングの概略図である。論理ブロック４１０が、フラッシュソフトウエアを使用してブロックとして有効にグループ分けされる任意の数のページを含む。記述される実施形態では、論理ブロック４１０は、約３２ページを含む。
【００３７】
当業者には理解されるように、ページを論理ブロック４１０にグループ分けすることに加えて、フラッシュソフトウエアは、一般に、論理ブロックを物理ブロックに変換する、またはマッピングすることも可能である。フラッシュソフトウエアは、論理ブロック４１０を２つの物理ブロック４１４にスプリットする、またはそうでない場合は分割することも可能である。物理ブロック４１４のサイズは変化することが可能であるが、物理ブロック４１４のサイズは、一般に、論理ブロック４１０のサイズに無矛盾である。例として、論理ブロック４１０が約３２ページを含むとき、物理ブロック４１４も、それぞれ約３２ページを含む。
【００３８】
論理ブロック４１０を物理ブロック４１４ａ、４１４ｂにスプリットすることは、通常、論理ブロック４１０および物理ブロック４１４ａ、４１４ｂを含むシステム全体がフォーマットされるときに行われる。通常、論理ブロック４１０をスプリットすることは、論理ブロック４１０に関連付けられたある割合のページに含まれるデータを物理ブロック４１４ａに提供し、論理ブロック４１０に関連付けられた残りのページに含まれるデータを物理ブロック４１４ｂに提供することを必要とする可能性がある。例として、論理ブロック４１０に関連付けられたページのほぼ半分、すなわち４１８において示される０〜１５ページが、物理ブロック４１４ａにコピーされることが可能であり、一方、４２２において示される１６〜３１ページが、物理ブロック４１４ｂにコピーされることが可能である。応用に応じて、スプリットは、様々な異なる方式で実施されることが可能であることを理解されたい。一実施形態では、スプリットは、比較的均等とすることが可能であり、偶数ページが１つの物理ブロックにグループ分けされ、一方、奇数ページが他の物理ブロックにグループ分けされるように、実施されることが可能である。スプリットは、比較的不均等とすることも可能であり、たとえば、０〜７ページが１つの物理ブロックにグループ分けされることが可能であり、一方、８〜３１ページがまれにしか修正されない間、０〜７ページが頻繁に書き込まれる場合、８〜３１ページが、他の物理ブロックにグループ分けされることが可能である。
【００３９】
図５ａは、論理ブロックと物理ブロック、すなわち図４の論理ブロック４１０と物理ブロック４１４との間のマッピングの概略図であり、これは、本発明の実施形態による、ページが論理ブロックおよび物理ブロックに割り当てられる方式を示す。当初、論理ブロック４１０が物理ブロック４１４に有効にスプリットされるとき、４１８において示される論理ブロックページ０〜１５に関連付けられたページが、物理ブロック４１４ａの５１８において示される物理ブロックページ０〜１５に有効にコピーされ、一方、４２２において示される論理ブロックページ１６〜３１に関連付けられたデータが、物理ブロック４１４ｂの５２２において示される物理ブロックページ０〜１５に有効にコピーされる。すなわち、論理ブロック４１０に関連付けられたページの半分の内容は、物理ブロック４１４ａのページ５１８の対応するセットにコピーされ、一方、ページの他の半分の内容は、物理ブロック４１４ｂのページ５２２の最初の半分にコピーされる。
【００４０】
システム全体がフォーマットされるとき、論理ブロック４１０に関連付けられる各物理ブロック４１４のほぼ半分が、依然として利用可能である、すなわち、実質的に満たされていない。具体的には、５２６において示される物理ブロックページ１６〜３１が、物理ブロック４１４ａにおいて満たされておらず、一方、５３２において示される物理ブロックページ１６〜３１が、物理ブロック４１４ｂにおいて満たされていない。更新が行われるとき、４１８において示される論理ブロックページ０〜１５のいずれかの更新内容を記憶するために、５２６において示されるページ１６〜３１が使用される。同様に、更新が行われるとき、４２２において示される論理ブロックページ１６〜３１のいずれかの更新内容を記憶するために、５３２において示されるページ１６〜３１が使用される。
【００４１】
図５ｂに示されるように、４１８において示される論理ブロックページ０〜１５の一部である論理ブロックページ５３０ａが更新されるとき、更新内容は、５２６において示される物理ブロックページ１６〜３１内のページ５３０ｂに書き込まれる。すなわち、論理ブロックページ５３０ａに関連する更新が行われるとき、５１８において示される物理ブロックページ０〜１５のすべてを再書き込みするのではなく、代わりに、更新された論理ブロックページ５３０ａが、記述される実施形態では４１４ａの第１の利用可能な未書込みページであるブロック５３０ｂに有効に書き込まれる。同様に、論理ブロックページ４２２に含まれる論理ブロックページ５３４ａが更新されるとき、更新内容は、５３２において示される物理ブロックページ１６〜３１内のページ５３４ｂに書き込まれる。
【００４２】
論理ブロックページ５３０ａなどの論理ブロックページの更新内容が、物理ブロックページ５３０ｂに記憶されるとき、論理ブロックページ５３０ａに関連するほぼあらゆる時間の内容がアクセスされるたびに、マッピングが有効に更新され、物理ブロックページ５３０ｂの内容がアクセスされることを理解されたい。すなわち、論理ブロックページ５３０ａに関連付けられた内容にアクセスすることが望ましいとき、５１８において示される物理ブロックページ０〜１５の一部であるページにアクセスするのではなく、論理ブロックページ５３０ａに関連付けられた直近の内容が、物理ブロックページ５３０ｂにおいてアクセスされることが可能である。論理ブロックページ５３０ａが再び更新される場合、新しい内容は、物理ブロック４１４ａの次の未書込み物理ブロックページに記憶されることが可能である。マッピングは、論理ブロックページ５３０ａに関連するほぼあらゆる時間の内容がアクセスされるたびに、物理ブロックページ５３０ｂなどの論理ブロックページ５３０ａに関連付けられた内容を含む物理ブロック４１４ａにおける直近に書き込まれた物理ブロックページの内容がアクセスされるように、有効に更新される。
【００４３】
一般に、物理ブロック４１４に関連付けられた利用可能なページが存在する限り、論理ブロック４１０に関連する更新が、比較的低いオーバーヘッドコストで、物理ブロック４１４に書き込まれることが可能であるが、その理由は、更新が行われるたびに、物理ブロック４１４を消去して、論理ブロック４１０に関連付けられたほぼすべての内容をコピーする必要が事実上ないからである。しかし、５２６において示される物理ブロックページ１６〜３１に含まれる利用可能なページが存在しないときなど、利用可能なブロックページが物理ブロック４１４にないとき、更新内容が、利用可能なブロックページを含まない物理ブロック４１４にコピーされないことがある。
【００４４】
更新内容がコピーされることが可能である物理ブロック４１４において利用可能なスペースが事実上ないとき、利用可能なスペースを有さない物理ブロック４１４の直近の内容が、新しい物理ブロックにコピーされることが可能である。次に図５ｃを参照すると、当初の物理ブロックがほぼフルであるとき、図５ａおよび５ｂの物理ブロック４１４ｂなどの物理ブロックを新しい物理ブロックと有効に置き換えることが、本発明の実施形態により、記述される。５３２において示されるページ１６〜３１がすべて書き込まれる、物理ブロック４１４ｂがフルであるとき、すなわち、物理ブロックに関連付けられたほぼすべての利用可能なページが書き込まれたとき、４２２において示される論理ブロック１６〜３１に関連する直近の内容に対応する物理ブロック４１４ｂの内容が、新しい物理ブロック５７４の５８０において示される物理ブロックページ０〜１５にコピーされることが可能である。結果として、物理ブロック５７４の５８０において示されるページ０〜１５は、４２２において示される論理ブロックページ１６〜３１に関連する現行内容を含み、一方、物理ブロック５７４の５８４において示されるページ１６〜３１は、依然として書き込まれておらず、したがって利用可能である。
【００４５】
内容が５８０において示されるページ０〜１５にコピーされた後、物理ブロック４１４ｂは、消去されることが可能である。物理ブロック４１４ｂの内容を物理ブロック５７４にコピーすることに加えて、物理ブロック４１４ｂを消去することは、比較的大量の計算リソースを消費する可能性がある。しかし、全体として実質的にページを消去せず、かつページをごくわずかにしかコピーしないので、物理ブロック４１４に当初スプリットされる論理ブロック４１０を含むシステムの効率は向上するが、その理由は、特定の物理ブロック４１４に関する消去プロセスは、通常、その特定のブロックに関連付けられたすべての利用可能なページが書き込まれるまで実施されないからである。システムがフォーマットされるとき、または物理ブロック４１４が当初割付けられるとき、物理ブロック４１４が約１６の利用可能なページをそれぞれ含む実施形態では、論理ブロック４１０に関連する内容の更新に関するシステムの性能は、最高で約１６倍に改善されることが可能である。改善は、一般に、物理ブロック４１４ｂのすべての利用可能なページが満たされるまで、すなわち約１６の更新が行われるまで、物理ブロック４１４ｂなどの物理ブロック４１４の内容をコピーし、物理ブロック４１４ｂを消去する必要性がないことの結果である。
【００４６】
４２２において示されるページ１６〜３１に関連付けられた内容が物理ブロック５７４にコピーされた後、更新が、４２２において示されるページ１６〜３１に関連する内容に対してほぼ行われるたびに、更新ページが、５８４において示されるページ１６〜３１の１つに記憶される、または書き込まれることが可能である。すなわち、物理ブロック４１４ｂが消去された後、物理ブロック５７４が、論理ブロック４１０の４２２において示されるページ１６〜３１に関連付けられた物理ブロックとして引き継ぐ。
【００４７】
以前に記述されたように、ＦＡＴファイルシステムにおけるＦＡＴブロックまたはルート・ディレクトリ・ブロックに対応する論理ブロックが、フラッシュメモリを含むシステム全体の性能を増大させるように、スプリットされることが可能である。ＦＡＴファイルシステム内のＦＡＴおよびルートディレクトリに必要な物理ブロックの数は、スプリットブロックが使用されるとき、事実上２倍になるが、その理由は、ＦＡＴブロックおよびルート・ディレクトリ・ブロックの数がシステム全体内において比較的小さいので、追加の物理ブロックの使用は、比較的些少である。しかし、ＦＡＴファイルシステム内のページがしばしば更新されるので、ＦＡＴブロックがコピーおよび消去される回数を低減することは、著しい性能の利点となる。しかし、スプリットブロックの使用は、ブロックが単一セクタにおいて通常アクセスされるほぼあらゆる状況においてなど、単一ページが任意の所与の時間に更新されるほぼあらゆる状況において、有益である可能性があることを理解されたい。
【００４８】
図６を参照すると、スプリット論理ブロックを使用する１つの方法が、本発明の実施形態により記述される。上述されたように、論理ブロックが、２つの物理ブロック、すなわち物理ブロック「Ａ」および物理ブロック「Ｂ」に一般にスプリットされる、またはそうでない場合は分割される。すなわち、論理ブロックに関連付けられたデータのいくつかが物理ブロック「Ａ」に記憶されることが可能であり、一方、本質的に、データの残りが物理ブロック「Ｂ」に記憶されることが可能であるように、論理ブロックがマッピングされることが可能である。例として、３２ページに関連付けられた論理ブロックが、１６ページが物理ブロック「Ａ」に記憶され、１６ページが物理ブロック「Ｂ」に記憶されるように、スプリットされることが可能である。同様に、６４ページに関連付けられる論理ブロックが、３２ページが物理ブロック「Ａ」に記憶され、３２ページが物理ブロック「Ｂ」に記憶されるように、スプリットされることが可能である。論理ブロックに関連付けられたページが物理ブロック「Ａ」および物理ブロック「Ｂ」に記憶された後、物理ブロック「Ａ」および物理ブロック「Ｂ」の両方とも、利用可能なスペース、すなわち、更新ページが書き込まれることが可能であるスペースを含むことを理解されたい。
【００４９】
通常、論理ブロックは、不揮発性メモリを含むシステム全体がフォーマットされるとき、スプリットされる。以前に記述されたように、スプリット論理ブロックは、一般に、単一セクタが任意の所与の時間に更新されるシステムにおいて使用される。すなわち、論理ブロックに関連付けられたほぼ１ページのみが任意のある時間に有効に更新されるとき、論理ブロックのスプリットの使用が特に望ましいが、その理由は、ページの更新に関連する動作の数が、ほぼ最小限に抑えられることが可能であるからである。
【００５０】
論理ブロックを更新するプロセスなど、論理ブロック６００を使用するプロセスは、物理ブロック「Ａ」に記憶される、またはそうでない場合は関連付けられるページが更新されるかに関して判定が行われるとき、ステップ６０８において開始される。ページに関連付けられたセクタが更新されるとき、ページ全体が更新されるが、その理由は、ページは、通常、プログラミングの最小単位であるからである。物理ブロック「Ａ」に関連付けられたページが更新されないと判定される場合、プロセスの流れは、ステップ６１２に進み、物理ブロック「Ｂ」に関連付けられたページが更新されるかが判定される。物理ブロック「Ｂ」に関連付けられたページが更新されないと判定される場合、論理ブロックを更新するプロセスは、完了される。
【００５１】
代替として、ステップ６１２の判定が、ブロック「Ｂ」に関連付けられたページが更新されるというものである場合、更新内容は、物理ブロック「Ｂ」の利用可能なページにコピーされる。通常、更新内容は、物理ブロック「Ｂ」に関連付けられた第１の利用可能なページにコピーされる。更新内容がコピーされた後、物理ブロック「Ｂ」がフルであるかに関する判定が、ステップ６２０において行われる。すなわち、追加の利用可能なページが物理ブロック「Ｂ」に残存するかが判定される。
【００５２】
ステップ６２０において、物理ブロック「Ｂ」がフルではないと判定される場合、追加の更新が、物理ブロック「Ｂ」に関連付けられたページに関して実施されることが可能であることを意味する。したがって、プロセスの流れは、ステップ６０８に戻り、物理ブロック「Ａ」に関連付けられたページの更新など、追加の更新が行われるかが判定される。ステップ６２０の判定が、物理ブロック「Ｂ」がフルであるという場合、物理ブロック「Ｂ」には利用可能なページはもはや残存していないことを意味する。したがって、ステップ６２４において、新しい物理ブロックが直近の内容を含み、かつ未来の更新に利用可能なページを有するように、物理ブロック「Ｂ」に表された各論理ページに対応する直近の内容が、新しい物理ブロックにコピーされる。具体的には、物理ブロック「Ｂ」において表された各論理ページに属する直近の情報が、ほぼ順序通り、新しい物理ブロックにコピーされる。例として、物理ブロック「Ｂ」がスプリット論理ブロックのページ１６から３１を含む場合、物理ブロック「Ｂ」に記憶されるスプリット論理ブロックのページ１６から３１のほぼ現行内容のみが、新しい物理ブロックに記憶される。
【００５３】
直近の内容が新しい物理ブロックにコピーされた後、物理ブロック「Ｂ」は、ステップ６２８において消去され、新しい物理ブロックが、物理ブロック「Ｂ」として有効に再度名称付けされる。次いで、プロセスの流れは、ステップ６０８に戻り、物理ブロック「Ａ」に関連付けられたページが更新されるかに関する判定が行われる。
【００５４】
ステップ６０８に戻ると、物理ブロック「Ａ」に関連付けられたページが更新されると判定される場合、次いで、更新されるページに関連付けられた更新内容が、物理ブロック「Ａ」内の利用可能なページにコピーされる。内容が、利用可能なページにコピーされた、または書き込まれた後、ステップ６３６において、物理ブロック「Ａ」がフルであるかに関する判定が行われる。物理ブロック「Ａ」がフルではないと判定される場合、次いで、さらなる更新が、物理ブロック「Ａ」に関連付けられたページに対して行われることが可能である。したがって、プロセスの流れは、ステップ６０８に戻り、物理ブロック「Ａ」に関連付けられたページが更新されるかに関する判定が行われる。
【００５５】
一方、ステップ６３６において、物理ブロック「Ａ」がフルであると判定される場合、利用可能なページは物理ブロック「Ａ」には事実上残存していないことを意味する。したがって、物理ブロック「Ａ」において表された各論理ページに対応する直近の内容が、ステップ６４０において新しい物理ブロックにコピーされる。内容が新しい物理ブロックにコピーされた後、物理ブロック「Ａ」は、ステップ６４４において消去され、一方、新しい物理ブロックは、物理ブロック「Ａ」として有効に設定される。すなわち、新しいブロックは、物理ブロック「Ａ」として認識される。新しい物理ブロックが物理ブロック「Ａ」として設定された後、プロセスの流れは、ステップ６０８に戻り、物理ブロック「Ａ」に関連付けられたページが更新されるかに関する判定が行われる。
【００５６】
スプリット論理ブロックを使用する方法は、広範に変更されることが可能である。すなわち、図６に関して記述された方法以外の方法が使用されることが可能である。スプリット論理ブロックを使用する他の適切な方法が、図７を参照して記述される。更新など、スプリット論理ブロックを使用するプロセス７００が、論理ブロックが２つの物理ブロック、すなわち物理ブロック「Ａ」および物理ブロック「Ｂ」にスプリットされた後、またはそうでない場合は分割された後、一般に行われる。一般に、論理ブロックは、不揮発性メモリを含むシステム全体がフォーマットされるとき、スプリットされる。
【００５７】
論理ブロックがスプリットされた後、ステップ７０８において、物理ブロック「Ａ」に記憶される、またはそうでない場合は関連付けられるページが更新されるかに関する判定が行われるとき、プロセス７００が開始される。物理ブロック「Ａ」に関連付けられたページが更新されないと判定される場合、プロセスの流れは、ステップ７１２に進み、物理ブロック「Ｂ」に関連付けられたページが更新されるかについて判定される。物理ブロック「Ｂ」に関連付けられたページが更新されないと判定される場合、スプリット論理ブロックを更新するプロセスは完了される。
【００５８】
代替として、ステップ７１２において、物理ブロック「Ｂ」に関連付けられたページが更新されると判定される場合、ステップ７１４において、物理ブロック「Ｂ」がフルであるか、すなわち、更新内容を物理ブロック「Ｂ」に書き込む余地があるかについて判定が行われる。物理ブロック「Ｂ」がフルではなく、かつ更新内容を物理ブロック「Ｂ」に書き込む余地があると判定される場合、更新内容は、ステップ７１６において、物理ブロック「Ｂ」の利用可能なページにコピーされる。通常、更新内容は、物理ブロック「Ｂ」に関連付けられた第１の利用可能なページにコピーされる。更新内容がコピーされた後、プロセスの流れは、ステップ７０８に戻り、物理ブロック「Ａ」に関連付けられたページが更新されるかについて判定される。
【００５９】
ステップ７１４に戻ると、物理ブロック「Ｂ」がフルであり、したがって物理ブロック「Ｂ」に残存する追加の利用可能なページが本質的に存在しないと判定される場合、新しい物理ブロックが直近の内容を含み、かつ未来の更新に利用可能なページを有するように、物理ブロック「Ｂ」に表された各ページに対応する直近の内容が、新しい物理ブロックにコピーされる。直近の内容をコピーすることは、物理ブロック「Ｂ」がフルであったために、物理ブロック「Ｂ」に記憶することができなかった更新内容、および以前に記憶された各論理ページに関連付けられる物理ブロック「Ｂ」に記憶されている直近の内容をコピーすることを含む。
【００６０】
直近の内容が新しい物理ブロックに書き込まれた後、物理ブロック「Ｂ」は、ステップ７２８において消去され、新しい物理ブロックは、物理ブロック「Ｂ」の目的を有効に果たし、たとえば、新しい物理ブロックは、本質的に、物理ブロック「Ｂ」になる。次いで、プロセスの流れは、ステップ７０８に戻り、物理ブロック「Ａ」に関連付けられたページが更新されるかについて、判定が行われる。
【００６１】
ステップ７０８に戻ると、物理ブロック「Ａ」に関連付けられたページが更新されると判定される場合、ステップ７１０において、物理ブロック「Ａ」がフルであるかについて判定される。物理ブロック「Ａ」がフルではないと判定される場合、ステップ７３２において、更新されるページに関連付けられた更新内容が、物理ブロック「Ａ」内の利用可能なページにコピーされる。利用可能なページに内容がコピーされた後、または書き込まれた後、プロセスの流れはステップ７０８に戻る。
【００６２】
一方、ステップ７１０において、物理ブロック「Ａ」がフルであると判定される場合、物理ブロック「Ａ」に関連付けられたページに対して、さらなる更新が行われない可能性があることを意味する。したがって、ステップ７４０において、物理ブロック「Ａ」において一般に表される各論理ページに対応する直近の内容が、新しい物理ブロックにコピーされる。内容が新しい物理ブロックにコピーされた後、物理ブロック「Ａ」は、ステップ７４４において消去され、一方、新しい物理ブロックは、物理ブロック「Ａ」に有効に設定される。新しい物理ブロックが物理ブロック「Ａ」として設定された後、プロセスの流れは、ステップ７０８に戻り、物理ブロック「Ａ」に関連付けられたページが更新されるかについて、判定が行われる。
【００６３】
一般に、論理ブロックを複数の物理ブロックにスプリットし、更新が行われることを可能にすることに関連する機能は、プログラムコード装置などのソフトウエアにおいて、またはホストシステムへのファームウエアとして提供される。劣化の一様化が行われることを可能にするために、ホストシステムに提供されるソフトウエアまたはファームウエアと関連付けられる適切なシステムアーキテクチャの１つの実施形態が、図８に示される。システムアーキテクチャ８００は、様々なモジュールを一般に含み、アプリケーション・インタフェース・モジュール８０４、システム・マネジャ・モジュール８０８、データ・マネジャ・モジュール８１２、データ保全マネジャ８１６、ならびに装置マネジャおよびインタフェースモジュール８２０を含むことが可能であるが、これに限定されるものではない。一般に、システムアーキテクチャ８００は、図２ａのプロセッサ１０８など、プロセッサによってアクセスされることが可能であるソフトウエアコード装置またはファームウエアを使用して実施されることが可能である。
【００６４】
一般に、アプリケーション・インタフェース・モジュール８０４は、ホスト、オペレーティングシステム、またはユーザと直接通信するように構成されることが可能である。アプリケーション・インタフェース・モジュール８０４は、システム・マネジャ・モジュール８０８およびデータ・マネジャ・モジュール８１２とも通信する。ユーザがフラッシュメモリを読み取る、書き込む、またはフォーマットすることを望むとき、ユーザは、要求をオペレーティングシステムに送信し、要求は、アプリケーション・インタフェース・モジュール８０４に渡される。アプリケーション・インタフェース・モジュール８０４は、要求に応じて、要求をシステム・マネジャ・モジュール８０８またはデータ・マネジャ・モジュール８１２に向ける。
【００６５】
システム・マネジャ・モジュール８０８は、システム初期化サブモジュール８２４、消去カウントブロック管理サブモジュール８２６、および電力管理ブロックサブモジュール８３０を含む。システム初期化サブモジュール８２４は、一般に、初期化要求が処理されることを可能にするように構成され、通常、消去カウントブロック管理サブモジュール８２６と通信する。消去カウントブロック管理サブモジュール８２６は、ブロックの消去カウントを記憶する機能、個々の消去カウントを使用して、平均消去カウントを計算ならびに更新する機能を含む。消去カウントの使用は、参照によって本明細書に完全に組み込まれている、同時係属米国特許出願１０／２８１７３９、２００２年１０月２８日出願（代理人整理番号第ＳＡＮＤＰ０２３）に記載されている。システム初期化モジュール８２４は、たとえばＦＡＴファイルシステムについて、システム・ブロック・リストを創出し、スプリットブロックを識別することを可能にするスプリット・ブロック・リストを創出するようにも構成される。そのようなスプリット・ブロック・リストは、スプリット論理ブロック、ならびにスプリット論理ブロックに対応する物理ブロックが容易に識別されることを可能にすることが出来る。
【００６６】
アプリケーション・インタフェース・モジュール８０４と通信することに加えて、システム・マネジャ・モジュール８０８は、データ・マネジャ・モジュール８１２、ならびに装置マネジャおよびインタフェースモジュール８２０とも通信する。システム・マネジャ・モジュール８０８およびアプリケーション・インタフェース・モジュール８０４の両方と通信するデータ・マネジャ・モジュール８１２は、論理セクタを物理セクタに有効に変換するセクタマッピングを提供する機能を含むことが可能である。すなわち、データ・マネジャ・モジュール８１２は、論理ブロックを物理ブロックにマッピングするように構成される。データ・マネジャ・モジュール８１２は、オペレーティングシステムおよびファイル・システム・インタフェース層に関連する機能を含むことも可能である。
【００６７】
システム・マネジャ・モジュール８０８、データマネジャ８１２、およびデータ保全マネジャ８１６と通信する装置マネジャおよびインタフェースモジュール８２０は、通常、フラッシュ・メモリ・インタフェースを提供し、Ｉ／Ｏインタフェースなど、ハードウエア抽象化に関連する機能を含む。データ保全マネジャモジュール８１６は、機能の中でも、ＥＣＣハンドリングを提供する。
【００６８】
本発明のごくわずかの実施形態が記述されたが、本発明は、本発明の精神または範囲から逸脱せずに、多くの他の特有の形態において実現されることが可能であることを理解されたい。例として、論理ブロックは、２つの物理ブロックにスプリットされるように記述されたが、論理ブロックは、一般に任意の数の物理ブロックにスプリットされることが可能である。すなわち、論理ブロックは、２つ以上の物理ブロックにスプリットされることが可能である。
【００６９】
論理ブロックが２つの物理ブロックにスプリットされるとき、物理ブロックは、一般に、論理ブロックに関連付けられた内容のほぼ半分をそれぞれ含む。すなわち、各物理ブロックは、当初、論理ブロックに関連付けられた内容の半分で満たされることが可能である。しかし、論理ブロックに関連付けられた内容は、物理ブロック間において比較的不均等にスプリットされることが可能であることを理解されたい。たとえば、論理ブロックに関連付けられた内容の５０パーセント未満が、１つの物理ブロックに書き込まれることが可能であり、一方、論理ブロックに関連付けられた残りの内容が、他の物理ブロックに書き込まれることが可能である。論理ブロックを比較的不均等にスプリットすることは、いくつかのページが他のページより頻繁に新しく書き込まれる、または再書き込みされることが予測または観測される実施形態において有益である可能性があるが、その理由は、しばしば書き込まれるページに関連付けられる物理ブロックに含まれるより多くの利用可能なスペースを見込むことにより、必要とされる全コピーおよび消去の動作の数をさらに低減することが可能であるからである。
【００７０】
一般に、論理ブロックを複数の物理ブロックにスプリットすることは、ＦＡＴブロックおよびルート・ディレクトリ・ブロックが記憶されるメモリのシステム領域において特に適切であると記述された。すなわち、スプリットブロックは、システム領域に通常含まれるが、その理由は、ＦＡＴブロックおよびルート・ディレクトリ・ブロックなどのブロックは、単一セクタにおいて、または単一ページとして、一般にアクセスされるからである。しかし、本発明の精神または範囲から逸脱せずに、１度に１ページに通常書き込まれる、または更新されるほぼあらゆるブロックが、スプリットブロックになることが可能であることを理解されたい。
【００７１】
フラッシュメモリのサイズおよびフラッシュメモリ内のブロックのサイズは、広範に変更されることが可能である。ブロックのサイズは、約３２ページを含むと一般に記述されたが、ブロックは、任意の数のページ、またはより一般的には、ブロックを作成する任意の数の要素を含むことが可能である。たとえば、ブロックは、約６４ページを含むことが可能である。その結果、システム内のブロックの数は、変更されることが可能である。５１２Ｍｂ  ＮＡＮＤフラッシュメモリ内では、ブロックが約５１２バイトをそれぞれが含む約３２ページを含む場合、全体で４０９６の物理ブロックが、フラッシュメモリに存在する。代替として、同じ５１２Ｍｂ  ＮＡＮＤフラッシュメモリ内において、各物理ブロックが約５１２バイトをそれぞれが含む約６４ページを含む場合、全体で２０４８の物理ブロックが、フラッシュメモリに存在することが可能である。一般に、ページのサイズも、変更されることが可能である。
【００７２】
本発明の様々な方法に関連するステップは、広範に変更されることが可能である。一般に、ステップは、追加、除去、再順序付け、および変更されることが可能である。したがって、本例は、例示であって、限定的ではないと考慮されるべきであり、本発明は、本明細書において与えられる詳細に限定されるものではなく、添付の請求項の範囲内において修正されることが可能である。
【図面の簡単な説明】
【００７３】
【図１ａ】図１ａはファイルシステムによって有効に分割されたメモリの概略図である。
【図１ｂ】図１ｂは論理ブロックと物理ブロックとの間におけるマッピングの概略図である。
【図２ａ】不揮発性メモリを含む全体的なホストシステムの概略図である。
【図２ｂ】図２ａのメモリ装置１２０など、メモリ装置の概略図である。
【図２ｃ】埋込み不揮発性メモリを含むホストシステムの概略図である。
【図３】本発明の実施形態による、論理ブロックを有するファイルシステムおよび物理ブロックを有する媒体の概略図である。
【図４】本発明の実施形態による、論理ブロックと物理ブロックとの間におけるマッピングの概略図である。
【図５ａ】本発明の実施形態による、ページが論理ブロックおよび物理ブロックに割り当てられる方式を示す、論理ブロックと物理ブロック、すなわち、図４の論理ブロック４１０と物理ブロック４１４との間におけるマッピングの概略図である。
【図５ｂ】本発明の実施形態による新しく書き込まれたページを有する、システムメモリ、すなわち図５ａのシステムメモリの概略的なブロック図である。
【図５ｃ】本発明の実施形態による分割論理ブロックに割り当てられた新しい物理ブロックを有する、システムメモリ、すなわち図５ａのシステムメモリの概略的なブロック図である。
【図６】本発明の実施形態による分割論理ブロックを使用する第１方法と関連付けられるステップを示すプロセス流れ図である。
【図７】本発明の実施形態による分割論理ブロックを使用する第２方法と関連付けられるステップを示すプロセス流れ図である。
【図８】本発明の実施形態によるシステムアーキテクチャの概略的なブロック図である。
【図１ａ】
2006504198.tif 000003
【図１ｂ】
2006504198.tif 000004
【図２ａ】
2006504198.tif 000005
【図２ｂ】
2006504198.tif 000006
【図２ｃ】
2006504198.tif 000007
【図３】
2006504198.tif 000008
【図４】
2006504198.tif 000009
【図５ａ】
2006504198.tif 000010
【図５ｂ】
2006504198.tif 000011
【図５ｃ】
2006504198.tif 000012
【図６】
2006504198.tif 000013
【図７】
2006504198.tif 000014
【図８】
2006504198.tif 000015
【国際調査報告】
2006504198.tif 000016
2006504198.tif 000017