JP4301301B2 - 不揮発性半導体記憶装置およびその管理方法 - Google Patents
不揮発性半導体記憶装置およびその管理方法 Download PDFInfo
- Publication number
- JP4301301B2 JP4301301B2 JP2007025736A JP2007025736A JP4301301B2 JP 4301301 B2 JP4301301 B2 JP 4301301B2 JP 2007025736 A JP2007025736 A JP 2007025736A JP 2007025736 A JP2007025736 A JP 2007025736A JP 4301301 B2 JP4301301 B2 JP 4301301B2
- Authority
- JP
- Japan
- Prior art keywords
- management information
- map
- area
- writing
- written
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Description
また、この管理情報自体を不揮発メモリ上に格納することにより、起動時に毎回構築しなおすのを省く手法を取ることもある。
また、ユーザデータと同時に管理情報を書くことはできないのでユーザデータのみ書き換えられた瞬間は発生する。
これらのために、不意の電源遮断等により不揮発メモリ上に存在するユーザデータと管理情報の間に不整合を生じることがある。
起動時には、その情報が書き込みを開始した後であることを示していれば、管理情報が正しいという保証ができないので、管理情報を再構築することになる。
また、管理情報を階層化してそれぞれの新旧がわかるようにすることで、領域ごとの管理情報の有効/無効の判断を素早く行う。
これにより、総容量が大きく増えた不揮発メモリシステムにおいても、起動時に必要となる処理時間を短くおさえることができ、不揮発メモリシステムのより一層の大容量化が可能となる。
不揮発性メモリ2は1つでも複数でも良い。ユーザデータ、管理情報、マップは不揮発性メモリ2に格納される。不揮発性メモリ2上の配置は管理の方法に応じたものとなる。
コントローラ3内には揮発性メモリ31とロジック部32が配置されている。揮発性メモリ31上には不揮発性メモリ2から読み出したマップや管理情報の一部または全部が展開される。
コントローラ3においては、データを書き換えた際には揮発性メモリ31上で情報の更新が行われ、その後その情報を不揮発性メモリ2に書き込む。
また、ユーザデータ書き込みの前に下位の管理情報を更新することで、上位の管理情報が下位の管理情報を正しく反映できていればシステム全体として管理情報が正しいと判別できるように構成されている。
また、管理情報CINFを管理するマップMPを設ける。マップMPに管理情報CINFの不揮発性メモリ2上のアドレス等を記録しておき、このマップMPを不揮発性メモリ2上の特定の場所などの探索しやすい場所に保存しておく。これにより、起動後にマップおよびそこにアドレスが記録された管理情報の位置を素早く知ることができる。
複数の系統を持つ場合の利点として、論物変換テーブルは論理的な分割の方が、効率が良いが、ブロックの状態を表すテーブルは物理的な分割の方が効率が良いといったように、管理する内容に応じて適切な分割が可能となるということが挙げられる。複数の系統で持った場合には、あるデータの管理情報が正しいかどうかはそのデータにかかわる全ての系統で判断する必要がある。
ブロックBLK内はページ番号の若い順にデータが書き込まれ、最後に書かれたページの内容のみが有効である。
これを表現するものとして図3(B)では有効な情報のみを用いた表現としている。図12等ではこの図3(B)の表現を不揮発メモリ内の管理情報の表現として用いる。
この状態から管理情報CINFを更新するといった場合には、図5(A)に示すように有効なデータのあるPG0の次のページであるPG1に更新すべきデータを書き込む。この際、冗長部RDNPにはその時々に応じた情報を書き込む。図5(B)は更新された状態を表現するもので、IDおよび書込み中であるかどうかを表すフィールドIDFLD,WRFLDが更新されたPG1のものとなっている。
図6(A)および(B)は図5(A)および(B)の状態に対して更新を行った様子を示す。図6(A)に示すように有効なデータのあるPG1の次のページであるPG2にデータ部DTPおよび冗長部RDNPを書き込み、更新された状態として図6(B)のように示す。図7(A)および(B)はさらに更新を行った様子を示す。
図9(A)は、図8(A)の状態に対して管理情報の更新を行う様子を示したものである。始めに、使用中のブロックとは別の空きブロックを割当て、その先頭ページであるPG0に更新データおよび冗長部を書き込む。その後、それまで使用していたブロックを消去する。これにより、ページPG0に有効なデータの書かれたブロックが残る。図9(B)は、更新後の状態を表現したものである。この表現にはブロックがどのページまで使用されたかという情報を含まないため、単純に有効な情報が更新されたものとして他の更新と同様の変化となる。
管理情報CINFは書込み中であるかどうかを表すフィールドを持つが、マップMPではその領域への情報の割当ては行わない。ブロックBLK内はページ番号の若い順にデータが書き込まれ、最後に書かれたページの内容のみが有効である。これを表現する物として図10(B)では有効な情報のみを用いた表現としている。こちらは管理情報と違い、データ部DTPとIDのみの表現としている。図12等ではこの図10(B)の表現を不揮発性メモリ2内のマップMPの表現として用いる。
図11(B)は更新された状態を表現するもので、IDが更新されたページPG5のものとなっている。
ここでは書込み中の状態を表す場合は0x1、書込み中でない状態を表す場合は0x0とする。また、マップMPにも新旧を表すIDのフィールドがある。
管理情報CINFやマップMPは不揮発性メモリ2上のどこに置いてあっても構わない。マップMPのIDが管理情報CINFのID以上の番号を持つ場合は、マップMPの情報が管理情報CINFよりも新しく、管理情報CINFの最新の状態を反映していることを示す。
初期状態では、IDは全ての管理情報CINFおよびマップで0x1とし、書き込み中を示すデータを持つ管理情報CINFはなしとする。この状態で、不揮発性メモリ2上の全ての管理情報CINFがデータの最新の状態を反映し、マップMPも全ての管理情報CINFの最新の状態を反映していることになる。また、揮発性メモリ31上にはまだ何もデータを展開していない状態である。
マップMPを不揮発性メモリ2から揮発性メモリ31へ展開するのは、起動後最初の1回のみで良い。揮発性メモリ31上のマップMPを参照して、領域AR1の管理情報CINFを揮発性メモリ31上に読み出す。この状態では、まだ不揮発性メモリ2上の管理情報CINFおよびマップMPはそれぞれユーザデータUDおよび管理情報CINFの最新の状態を反映したものとなっている。
管理情報CINFを書き込んだだけの状態では、実際には管理情報CINFはユーザデータUDの最新の状態を反映している。
しかし、管理情報CINFのIDがマップMPのIDより大きくなるため、マップMPの情報が管理情報CINFの最新の状態を反映していると保証できなくなり、管理情報に書き込み中の状態を設定しているために管理情報CINFがユーザデータの最新の状態を反映していると保証できなくなる。このため、これ以降に電源遮断が発生した場合は、次回の起動時に管理情報CINFおよびマップMPの再構築を行う必要がある。
これにより、不揮発性メモリ2上の管理情報CINFは最新のユーザデータを反映したものとなる。ただし、不揮発性メモリ2上のマップMPは最新の管理情報CINFを反映したものとはなっていない。
これにより、不揮発性メモリ2上のマップが最新の管理情報CINFを反映したものとなる。この状態で、不揮発性メモリ2上のマップのIDは不揮発性メモリ2上の全ての管理情報CINFのIDの最大値以上の値(ここでは同じ値)となり、不揮発性メモリ2上のマップMPが全ての管理情報CINFの最新の状態を反映していると保証することができるようになる。
また、ユーザデータを書き換える前に管理情報CINFを書きこむようにしてあるため、不揮発性メモリ2上のマップMPが管理情報CINFの最新の状態を反映していれば、管理情報CINFもユーザデータUDの最新の状態を反映していると保証することができ、全ての情報が最新の状態を反映していると保証することができるようになる。
図18中、白抜きの矢印は、不揮発性メモリ2上の冗長部RDNPにおいて最新の状態を反映していると保証可能な期間を示す。一方、黒の矢印は、不揮発性メモリ2上のマップMP/管理情報CINFが実際に最新の状態を反映している期間を示す。
ただし、管理情報CINFについては、書き込み中である状態を設定して書き込みを行った段階で、ユーザデータの最新の状態を反映していると保証することはできなくなる。
ユーザデータの書き換えが終わり、書き込み中でない状態として管理情報CINFを書き込んだ時点で(ST3)、不揮発性メモリ2上の管理情報CINFはユーザデータUDの最新の状態を反映することになり、実際に最新の状態を反映していると保証するようになる。また、マップMPを書き込んだ時点で(ST4)、不揮発性メモリ2上のマップMPは管理情報CINFの最新の状態を反映するようになり、実際に最新の状態を反映していると保証するようになる。
マップMPへの書き込みを行わずに別の領域に対するユーザデータUDの書き換えを行うことは可能である。この場合はマップMPの書きこみ回数を減らすことにより高速化やマップを書き込む領域の長寿命化といった利点がある。
領域AR2へのユーザデータUDの書き込みを行う前には、領域AR1のときと同様に管理情報CINFのIDをマップMPのIDより大きな番号(ここでは0x2)とし、書き込み中である状態を設定して書き込みを行う。
また、領域AR2の他の管理情報CINFの展開や退避も必要に応じて行う。この状態では、領域AR1および領域AR2については、管理情報CINFのIDがマップMPのIDより大きい。このために、不揮発性メモリ2上のマップMPが管理情報CINFの最新の状態を反映していないことを意味する。領域AR2については、書き込み中である状態と設定されているために、不揮発性メモリ2上の管理情報CINFがユーザデータUDの最新の状態を反映していないことを意味する。
領域AR2へのユーザデータUDの書き換えが終了した後で、最後に書き込み中でない状態として管理情報CINFの書き込みを行う。このときのIDはそれまでと同じとする。これにより、領域AR1と同様に不揮発性メモリ2上の管理情報CINFがユーザデータUDの最新の状態を反映したものとなる。その後、マップMPの書き込みを行うことで、全領域について不揮発性メモリ2上のマップMPが管理情報CINFの最新の状態を反映したものとなる。
一方で、不揮発性メモリ2上のマップMPのうち管理情報CINFの最新の状態を反映していない部分が多くなるため、途中で電源を遮断された場合に再構築を必要とする範囲が広がることになる。
マップMPについては、その領域の管理情報CINFを書き込んだ時点から最後にマップMPを書き込むまでが(ST17)、管理情報CINFの最新の状態を反映していると保証できない期間となる。こちらは、領域AR1についての書き換えが終わって領域AR2についての書き換えを開始した後でも、領域AR1についてマップが管理情報の最新の状態を反映していると保証はできない。
図22の状態に対し、最後の管理情報CINFの書き込みの際にIDをマップMPと同じもの(ここでは0x1)とし、書き込み中でない状態として書き込むことによって、不揮発性メモリ2上のマップMPが管理情報CINFの最新の状態を反映したものと判断できるようにしている。
ただし、この最後の管理情報CINFの書き込みによってもマップMPを変更する必要が無い場合に限られる。これにより、マップの書き込みを純粋に削減することが可能となる。
マップのIDが管理情報のIDより小さい場合は、管理情報の書き込み後に更新の必要なマップを書きこんでいない状態で電源が遮断されたことになる。その場合は管理情報の書き込み中であるかどうかを示すフィールドをチェックし(ST24)、書き込み中であると設定されていた場合はその領域についてユーザデータを実際に用いて管理情報の再構築を行う必要がある(ST25)。
また、書き込み中であると設定されていた場合もそうでない場合も、その領域についてマップの再構築を行う必要がある(ST26)。
この場合、領域AR1についてはマップMPの当該領域に対応する部分の再構築が必要であり、領域AR2については管理情報CINFの再構築とマップMPの当該領域に対応する部分の再構築が必要である。
それ以外の領域については管理情報CINFの再構築もマップMPの当該領域に対応する部分の再構築も不要である。
なお、領域AR1と領域AR2については、マップMPが管理情報CINFの最新の状態を反映していないため、マップMPによって求められた管理情報CINFの位置が正しくない場合がある。その場合には不揮発性メモリ2上から管理情報CINFを探し出すことも必要となる。
図27(A)は、不揮発性メモリ2内の1つの消去ブロックを表し、その中に64個の書き込み単位であるページを含む。1つのページPG内にはデータ部DTPの他に冗長部RDNPがあるが、代表以外の管理情報CINFではIDや書込み中であるかどうかを表すフィールドへの情報の割当ては行わない。
ブロックBLK内はページ番号の若い順にデータが書き込まれ、最後に書かれたページの内容のみが有効である。これを表現する物として図27(B)では有効な情報のみを用いた表現としている。代表の管理情報CINFと違い、データ部のみの表現としている。図29等ではこの図27の表現を不揮発メモリ内の代表以外の管理情報の表現として用いる。
不揮発性メモリ2上には管理情報CINFのマップMPおよび分割した領域のそれぞれに対応した複数の管理情報CINFが保存されている。
各領域に一つの代表となる管理情報CINFには、新旧を表すIDと書き込み中であるかどうかを表すフィールドIDFLD,WRFLDを持つ。ここでは書込み中の状態を表す場合は0x1、書込み中でない状態を表す場合は0x0とする。
初期状態では、IDは全ての代表となる管理情報CINFおよびマップMPで0x1とし、書き込み中を示すデータを持つ管理情報CINFはなしとする。この状態で、不揮発メモリ上2の全ての管理情報CINFがデータの最新の状態を反映し、マップMPも全ての管理情報CINFの最新の状態を反映していることになる。また、揮発性メモリ31上にはまだ何もデータを展開していない状態である。
マップMPを不揮発性メモリ2から揮発性メモリ31へ展開するのは、起動後最初の1回のみで良い。揮発性メモリ31上のマップを参照して、領域AR1の代表となる管理情報CINFを揮発性メモリ31上に読み出す。
この状態では、まだ不揮発性メモリ2上の管理情報CINFおよびマップMPはそれぞれユーザデータUDおよび管理情報CINFの最新の状態を反映したものとなっている。
書き込みを行う管理情報CINFには、IDとしてそれまでのマップMPのIDである0x1よりも大きな番号として0x2を設定し、書き込み中であるかどうかを示す情報として書き込み中である状態を設定する。
代表となる管理情報CINFを書き込んだだけの状態では、実際には管理情報CINFはユーザデータUDの最新の状態を反映しているが、管理情報CINFのIDがマップMPのIDより大きくなるため、マップMPの情報が管理情報CINFの最新の状態を反映していると保証できなくなり、代表となる管理情報CINFに書き込み中の状態を設定しているために管理情報CINFがユーザデータの最新の状態を反映していると保証できなくなる。
このため、これ以降に電源遮断が発生した場合は、次回の起動時に管理情報CINFおよびマップMPの再構築を行う必要がある。
ユーザデータUDの書き換えに合わせて、揮発性メモリ31上で管理情報CINFやマッMPプの更新を行う。これにより、不揮発性メモリ2上の管理情報CINFは最新のユーザデータUDを反映しなくなる。
代表となる管理情報以外の管理情報CINFについてはユーザデータと同様に自由に不揮発性メモリ2を書き換えて良い。
ユーザデータUDの書き換えが終了し、同じ領域の他の全ての管理情報CINFを不揮発性メモリ2上に退避した後で、最後に書き込み中でない状態として代表となる管理情報CINFの書き込みを行う。このときのIDはそれまでと同じとする。
これにより、不揮発性メモリ2上の管理情報CINFは最新のユーザデータUDを反映したものとなる。ただし、不揮発性メモリ2上のマップMPは最新の管理情報CINFを反映したものとはなっていない。
管理情報CINFの書き込みが終了し、不揮発性メモリ2上の管理情報CINFが最新のユーザデータUDを反映したものとなってから、マップMPを不揮発性メモリ2に書き込む。このときのIDは代表となる管理情報CINFのIDの最大値(ここでは0x2)以上の番号として、同じ0x2を使用する。
これにより、不揮発性メモリ2上のマップMPが最新の管理情報CINFを反映したものとなる。この状態で、不揮発性メモリ2上のマップMPのIDは不揮発性メモリ2上の全ての代表となる管理情報CINFのIDの最大値以上の値(ここでは同じ値)となり、不揮発性メモリ2上のマップMPが全ての管理情報CINFの最新の状態を反映していると保証することができるようになる。
また、ユーザデータUDを書き換える前に代表となる管理情報CINFを書きこむようにしてあるため、不揮発性メモリ2上のマップMPが管理情報CINFの最新の状態を反映していれば、管理情報CINFもユーザデータUDの最新の状態を反映していると保証することができ、全ての情報が最新の状態を反映していると保証することができるようになる。
この場合、複数の領域を行ったり来たりしながら(アクセスしながら)書き込みが行われるようなときに管理情報CINFの展開や退避を毎回行わなくても済むという利点がある。
複数の領域の管理情報CINFを展開する場合には、マップMPの書き込みを行うときには全ての領域で書き込み中でない状態の管理情報CINFが書きこまれた状態としてから、全管理情報のIDの最大値以上のIDを持つマップを書き込む必要がある。
これにより、管理情報CINFのIDがマップMPのID以下である領域は、不揮発性メモリ2上のマップMPも管理情報CINFも最新の状態を反映しているとすることができる。
ただし、書き込み中であるかどうかを表すフィールドWRFLDについてはサブ領域の中のどれが書き込み中であるのかをわかるような形にする。
図36では4つのサブ領域のうち書き込み中の扱いをするのは1つのみとして、そのサブ領域の番号を用いて書き込み中であることを示すものとしている。サブ領域の個数分のフラグを用意して、独立して書き込み中かそうでないかを表せるようにしても良い。
サブ領域に細分化することによって、管理情報CINFについてユーザデータUDの最新の状態を反映しているかどうかをサブ領域ごとに判別することができるようになり、管理情報CINFの再構築が必要になった場合の対象範囲を狭めることができるようになる。
これにより、ID比較によるマップおよび管理情報CINFの整合性の判別の手間を増やすことなく、管理情報CINFの再構築に要する時間を短縮することができるようになる。サブ領域の書き込み中フラグについて、サブ領域ごとに独立して表せるようにした場合は、複数のサブ領域を書き込み中の扱いにすることが可能となる利点があるが、その分だけ再構築対象となるサブ領域が増える可能性がある。
管理情報CINFの書き込みをしているので、マップMPの更新が必要な場合もあるため、不揮発性メモリ2上のマップMPは管理情報CINFの最新の状態を反映しているとは限らなくなる。しかし、既にマップMPを0x0のIDで書き込んでいるため、最新の状態を反映していると誤認識することはない。
不揮発性メモリ2上のマップは管理情報の最新の状態を反映している。これにより、IDの小さな値へのリセットが完了したことになる。
マップMPおよび管理情報CINFはそれぞれ別のブロックの途中のページに有効なデータが書かれた状態である。
図41の状態に対してマップをID=0x0で更新することになるが、不揮発性メモリ2上ではID=0xFEの書かれたページの次のページにID=0x0で書き込みを行う。
図42の状態に対して各管理情報CINFをID=0x1で更新することになる。たとえば領域AR2については、不揮発性メモリ2上ではID=0xF0の書かれたページの次のページにID=0x1で書き込みを行う。
図43の状態に対してマップをID=0x1で更新することになるが、不揮発性メモリ2上ではID=0x0の書かれたページの次のページにID=0x1で書き込みを行う。
これにより、総容量が大きく増えた不揮発メモリシステム1においても、起動時に必要となる処理時間を短くおさえることができ、不揮発メモリシステムのより一層の大容量化が可能となる。
Claims (11)
- 電気的に書き換え可能な不揮発性メモリと、
上記不揮発性メモリの管理に関する情報に基づいて当該不揮発性メモリのアクセス領域を制御するコントローラと、を有し、
上記コントローラは、
不揮発メモリの領域を分割して管理し、領域ごとにデータを管理する管理情報と、管理情報を束ねるマップに対して、統一した番号をつけて不揮発メモリに書くことで、その番号を元に各管理情報およびマップがそれぞれ正常であるかどうかを判断する機能を有し、
管理情報を書き込むときにマップの番号より大きな番号をつけ、マップを書くときに管理情報の番号の最大値以上の番号をつけることで、管理情報がマップ以下の番号を持つ領域はマップのその領域が正しいと判断する
不揮発性半導体記憶装置。 - 上記コントローラは、
データを書き始める前にマップより大きな番号をつけた管理情報を書きこむことで、管理情報がマップ以下の番号を持つ領域は管理情報もマップも正しいと判断する
請求項1記載の不揮発性半導体記憶装置。 - 上記コントローラは、
マップの番号を特別な最小値で書き換え、全ての管理情報の番号をそれより大きな値で書き換え、マップの番号をその値で再度書き換えることにより、大きくなった番号の小さな値へのリセットを行う
請求項1記載の不揮発性半導体記憶装置。 - 上記コントローラは、
データを書き始める前には管理情報に書き込み中であることを示す情報をつけて書きこみ、データを書き終わった後には管理情報の更新完了時にその情報を外して書きこむことで、その情報の有無によって管理情報が正しいかどうかを判断する
請求項1から3のいずれか一に記載の不揮発性半導体記憶装置。 - 上記コントローラは、
管理情報の番号がマップの番号より大きい場合、管理情報に書き込み中であることを示す情報が無ければ、管理情報は正しく、マップのその領域だけが正しくないと判断する
請求項4記載の不揮発性半導体記憶装置。 - 上記コントローラは、
起動時に管理情報およびマップを領域毎に正しいかどうか判断することで正しくないときの再構築範囲を限定する
請求項1から5のいずれか一に記載の不揮発性半導体記憶装置。 - 上記コントローラは、
一つの領域に対し複数の管理情報がある場合、最後に書き込む管理情報にのみ番号をつけることでその領域を代表する
請求項1から6のいずれか一に記載の不揮発性半導体記憶装置。 - 上記コントローラは、
管理情報が管理する領域がさらに細分化されている場合、書き込み中であることを示す情報が細分化された領域のどれか一つを示すことで管理情報のうちその領域の部分のみ正しくないと判断する
請求項1から7のいずれか一に記載の不揮発性半導体記憶装置。 - 上記コントローラは、
管理情報が管理する領域がさらに細分化されている場合、書き込み中であることを示す情報を細分化された領域のそれぞれに対して示すことで管理情報のうちその領域の部分のみ正しくないと判断する
請求項1から7のいずれか一に記載の不揮発性半導体記憶装置。 - 上記コントローラは、
更新された管理情報を書き込む際に、マップの更新が不要な場合は元の番号を管理情報につけることで、マップの書き込みを行わずに正しいと判断できる状態に戻す
請求項1から9のいずれか一に記載の不揮発性半導体記憶装置。 - 不揮発性メモリを有する不揮発性半導体記憶装置の管理方法であって、
上記不揮発メモリの領域を分割して管理し、
領域ごとにデータを管理する管理情報と、管理情報を束ねるマップに対して、統一した番号をつけて不揮発メモリに書き込み、
上記番号を元に各管理情報およびマップがそれぞれ正常であるかどうかを判断し、
上記管理情報を書き込むときにマップの番号より大きな番号をつけ、マップを書くときに管理情報の番号の最大値以上の番号をつけることで、管理情報がマップ以下の番号を持つ領域はマップのその領域が正しいと判断する
不揮発性半導体記憶装置の管理方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007025736A JP4301301B2 (ja) | 2007-02-05 | 2007-02-05 | 不揮発性半導体記憶装置およびその管理方法 |
US12/018,352 US7925821B2 (en) | 2007-02-05 | 2008-01-23 | Nonvolatile semiconductor storage device and method of managing the same |
CN2008100062290A CN101241767B (zh) | 2007-02-05 | 2008-02-04 | 非易失性半导体存储设备和管理该设备的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007025736A JP4301301B2 (ja) | 2007-02-05 | 2007-02-05 | 不揮発性半導体記憶装置およびその管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008191930A JP2008191930A (ja) | 2008-08-21 |
JP4301301B2 true JP4301301B2 (ja) | 2009-07-22 |
Family
ID=39677150
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007025736A Expired - Fee Related JP4301301B2 (ja) | 2007-02-05 | 2007-02-05 | 不揮発性半導体記憶装置およびその管理方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7925821B2 (ja) |
JP (1) | JP4301301B2 (ja) |
CN (1) | CN101241767B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018186453A1 (ja) | 2017-04-07 | 2018-10-11 | パナソニックIpマネジメント株式会社 | 使用回数を増大させた不揮発性メモリ |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4959630B2 (ja) * | 2008-05-23 | 2012-06-27 | 株式会社東芝 | データ記憶装置 |
US7925925B2 (en) * | 2008-12-30 | 2011-04-12 | Intel Corporation | Delta checkpoints for a non-volatile memory indirection table |
US8412987B2 (en) * | 2009-06-30 | 2013-04-02 | Micron Technology, Inc. | Non-volatile memory to store memory remap information |
JP5430298B2 (ja) * | 2009-09-03 | 2014-02-26 | サンデン株式会社 | 自動販売機の制御装置 |
US8886870B2 (en) * | 2010-05-25 | 2014-11-11 | Marvell World Trade Ltd. | Memory access table saving and restoring system and methods |
WO2012048444A1 (en) * | 2010-10-14 | 2012-04-19 | Freescale Semiconductor, Inc. Are | Memory controller and method for accessing a plurality of non-volatile memory arrays |
US9104614B2 (en) * | 2011-09-16 | 2015-08-11 | Apple Inc. | Handling unclean shutdowns for a system having non-volatile memory |
JP2018013951A (ja) * | 2016-07-21 | 2018-01-25 | 京セラドキュメントソリューションズ株式会社 | 電子機器及び情報更新プログラム |
JP6864228B2 (ja) | 2017-06-07 | 2021-04-28 | 株式会社バッファロー | 記憶装置および記憶装置のデータ管理方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10240629A (ja) | 1997-02-27 | 1998-09-11 | Mitsubishi Electric Corp | メモリ内情報更新方法 |
JP2001142774A (ja) | 1999-11-11 | 2001-05-25 | Toshiba Corp | メモリカード及び同カードに適用されるアドレス変換方法 |
JP3692313B2 (ja) | 2001-06-28 | 2005-09-07 | 松下電器産業株式会社 | 不揮発性メモリの制御方法 |
US6938091B2 (en) * | 2002-03-08 | 2005-08-30 | Hewlett-Packard Development Company, L.P. | Static end to end retransmit apparatus and method |
US20040064634A1 (en) * | 2002-09-26 | 2004-04-01 | Lowden Mark T. | Method of emulating electrically erasable memory in a motor vehicle microcontroller |
JP4211385B2 (ja) | 2002-12-20 | 2009-01-21 | パナソニック株式会社 | 半導体メモリカードおよび管理情報更新方法 |
US20050240717A1 (en) * | 2004-04-27 | 2005-10-27 | Via Technologies, Inc. | Interleaved Mapping Method of Block-Index-To-SDRAM-Address for Optical Storage (CD/DVD) System |
-
2007
- 2007-02-05 JP JP2007025736A patent/JP4301301B2/ja not_active Expired - Fee Related
-
2008
- 2008-01-23 US US12/018,352 patent/US7925821B2/en not_active Expired - Fee Related
- 2008-02-04 CN CN2008100062290A patent/CN101241767B/zh not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018186453A1 (ja) | 2017-04-07 | 2018-10-11 | パナソニックIpマネジメント株式会社 | 使用回数を増大させた不揮発性メモリ |
Also Published As
Publication number | Publication date |
---|---|
US20080189476A1 (en) | 2008-08-07 |
CN101241767B (zh) | 2012-08-29 |
US7925821B2 (en) | 2011-04-12 |
CN101241767A (zh) | 2008-08-13 |
JP2008191930A (ja) | 2008-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4301301B2 (ja) | 不揮発性半導体記憶装置およびその管理方法 | |
US10783071B2 (en) | Data storage device and operating method thereof, wherein mapping table for valid data of source block that has not been copied to destination block has a higher priority than mapping information collected by reverse scanning from end of the destination block | |
JP4837731B2 (ja) | プログラム可能な耐久度を有するフラッシュメモリ | |
KR101948381B1 (ko) | 고체 상태 드라이브에서 프래그먼티드 펌웨어 테이블 재구축을 위한 방법들, 데이터 저장 디바이스들 및 시스템들 | |
USRE45577E1 (en) | Method of writing to a flash memory including data blocks and log blocks | |
JP4633802B2 (ja) | 不揮発性記憶装置及びデータ読み出し方法及び管理テーブル作成方法 | |
KR101911589B1 (ko) | 솔리드 스테이트 드라이브들에서의 물리적-대-논리적 맵핑을 위한 방법들, 디바이스들 및 시스템들 | |
JP4524309B2 (ja) | フラッシュメモリ用のメモリコントローラ | |
US6687784B2 (en) | Controller for controlling nonvolatile memory unit | |
EP2570927B1 (en) | Handling unclean shutdowns for a system having non-volatile memory | |
KR100370893B1 (ko) | 일괄 소거형 비휘발성 메모리 장치 | |
US20080270680A1 (en) | Controller for Non-Volatile Memories and Methods of Operating the Memory Controller | |
KR20020009564A (ko) | 메모리 시스템 | |
KR20110117099A (ko) | 메모리 장치에서 맵핑 어드레스 테이블을 유지관리하는 방법 | |
JP2005516264A (ja) | 不揮発性メモリ上で実行されるブロック書き込み動作時間を低減させる方法および装置 | |
JP2006120082A (ja) | メモリカード、半導体装置、及びメモリカードの制御方法 | |
JP2006350430A (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP4242245B2 (ja) | フラッシュrom制御装置 | |
JP5066894B2 (ja) | 記憶媒体制御装置 | |
JP4794530B2 (ja) | 半導体装置および携帯電話 | |
JP2005115562A (ja) | フラッシュrom制御装置 | |
JP6118045B2 (ja) | 半導体記憶装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20081225 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090106 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090309 |
|
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: 20090331 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120501 Year of fee payment: 3 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4301301 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090413 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120501 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120501 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130501 Year of fee payment: 4 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140501 Year of fee payment: 5 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |