JP2005216293A - フラッシュメモリのデータ管理装置及びその方法 - Google Patents

フラッシュメモリのデータ管理装置及びその方法 Download PDF

Info

Publication number
JP2005216293A
JP2005216293A JP2005004566A JP2005004566A JP2005216293A JP 2005216293 A JP2005216293 A JP 2005216293A JP 2005004566 A JP2005004566 A JP 2005004566A JP 2005004566 A JP2005004566 A JP 2005004566A JP 2005216293 A JP2005216293 A JP 2005216293A
Authority
JP
Japan
Prior art keywords
block
flash memory
data
predetermined
error
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.)
Granted
Application number
JP2005004566A
Other languages
English (en)
Other versions
JP4704759B2 (ja
Inventor
Jin-Hyuk Kim
辰赫 金
Hyun-Mo Chung
賢模 鄭
Sung-Ju Myoung
星珠 明
Jae-Wook Cheong
宰旭 鄭
Saniku Park
贊▲イク▼ 朴
Tae-Sun Chung
泰善 鄭
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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics 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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2005216293A publication Critical patent/JP2005216293A/ja
Application granted granted Critical
Publication of JP4704759B2 publication Critical patent/JP4704759B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/76Masking faults in memories by using spares or by reconfiguring using address translation or modifications
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F16ENGINEERING ELEMENTS AND UNITS; GENERAL MEASURES FOR PRODUCING AND MAINTAINING EFFECTIVE FUNCTIONING OF MACHINES OR INSTALLATIONS; THERMAL INSULATION IN GENERAL
    • F16LPIPES; JOINTS OR FITTINGS FOR PIPES; SUPPORTS FOR PIPES, CABLES OR PROTECTIVE TUBING; MEANS FOR THERMAL INSULATION IN GENERAL
    • F16L59/00Thermal insulation in general
    • F16L59/02Shape or form of insulating materials, with or without coverings integral with the insulating materials
    • F16L59/029Shape or form of insulating materials, with or without coverings integral with the insulating materials layered
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B32LAYERED PRODUCTS
    • B32BLAYERED PRODUCTS, i.e. PRODUCTS BUILT-UP OF STRATA OF FLAT OR NON-FLAT, e.g. CELLULAR OR HONEYCOMB, FORM
    • B32B15/00Layered products comprising a layer of metal
    • B32B15/04Layered products comprising a layer of metal comprising metal as the main or only constituent of a layer, which is next to another layer of the same or of a different material
    • B32B15/046Layered products comprising a layer of metal comprising metal as the main or only constituent of a layer, which is next to another layer of the same or of a different material of foam
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B32LAYERED PRODUCTS
    • B32BLAYERED PRODUCTS, i.e. PRODUCTS BUILT-UP OF STRATA OF FLAT OR NON-FLAT, e.g. CELLULAR OR HONEYCOMB, FORM
    • B32B27/00Layered products comprising a layer of synthetic resin
    • B32B27/06Layered products comprising a layer of synthetic resin as the main or only constituent of a layer, which is next to another layer of the same or of a different material
    • B32B27/065Layered products comprising a layer of synthetic resin as the main or only constituent of a layer, which is next to another layer of the same or of a different material of foam
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B32LAYERED PRODUCTS
    • B32BLAYERED PRODUCTS, i.e. PRODUCTS BUILT-UP OF STRATA OF FLAT OR NON-FLAT, e.g. CELLULAR OR HONEYCOMB, FORM
    • B32B5/00Layered products characterised by the non- homogeneity or physical structure, i.e. comprising a fibrous, filamentary, particulate or foam layer; Layered products characterised by having a layer differing constitutionally or physically in different parts
    • B32B5/18Layered products characterised by the non- homogeneity or physical structure, i.e. comprising a fibrous, filamentary, particulate or foam layer; Layered products characterised by having a layer differing constitutionally or physically in different parts characterised by features of a layer of foamed material
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B32LAYERED PRODUCTS
    • B32BLAYERED PRODUCTS, i.e. PRODUCTS BUILT-UP OF STRATA OF FLAT OR NON-FLAT, e.g. CELLULAR OR HONEYCOMB, FORM
    • B32B9/00Layered products comprising a layer of a particular substance not covered by groups B32B11/00 - B32B29/00
    • B32B9/02Layered products comprising a layer of a particular substance not covered by groups B32B11/00 - B32B29/00 comprising animal or vegetable substances, e.g. cork, bamboo, starch
    • B32B9/025Layered products comprising a layer of a particular substance not covered by groups B32B11/00 - B32B29/00 comprising animal or vegetable substances, e.g. cork, bamboo, starch comprising leather
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B32LAYERED PRODUCTS
    • B32BLAYERED PRODUCTS, i.e. PRODUCTS BUILT-UP OF STRATA OF FLAT OR NON-FLAT, e.g. CELLULAR OR HONEYCOMB, FORM
    • B32B2266/00Composition of foam
    • B32B2266/02Organic
    • B32B2266/0214Materials belonging to B32B27/00
    • B32B2266/0278Polyurethane
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B32LAYERED PRODUCTS
    • B32BLAYERED PRODUCTS, i.e. PRODUCTS BUILT-UP OF STRATA OF FLAT OR NON-FLAT, e.g. CELLULAR OR HONEYCOMB, FORM
    • B32B2307/00Properties of the layers or laminate
    • B32B2307/30Properties of the layers or laminate having particular thermal properties
    • B32B2307/304Insulating
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B32LAYERED PRODUCTS
    • B32BLAYERED PRODUCTS, i.e. PRODUCTS BUILT-UP OF STRATA OF FLAT OR NON-FLAT, e.g. CELLULAR OR HONEYCOMB, FORM
    • B32B2607/00Walls, panels

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mechanical Engineering (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Memory System (AREA)
  • For Increasing The Reliability Of Semiconductor Memories (AREA)

Abstract

【課題】 フラッシュメモリのデータ管理装置及びその方法を提供する。
【解決手段】 少なくとも一つ以上のフラッシュメモリに対する動作を制御するデバイスドライバと、所定のフラッシュメモリでエラーブロックが発生した場合、エラーブロックに位置したデータを該当フラッシュメモリの所定ブロックに移動させる制御部と、を含むフラッシュメモリのデータ管理装置。これにより、少なくとも一つ以上のフラッシュメモリを使用するシステムで、データ演算方式によって所定のフラッシュメモリで発生したエラーブロックを処理できる。
【選択図】 図5A

Description

本発明はフラッシュメモリのデータ管理装置及びその方法に係り、さらに詳細には、少なくとも一つ以上のフラッシュメモリを使用するシステムで、データ演算方式によって所定のフラッシュメモリで発生したエラーブロックを処理できるフラッシュメモリのデータ管理装置及びその方法に関する。
一般的に、家電機器、通信機器、セットトップボックスなどの内蔵型システムでは、データを保存して処理するための保存媒体として不揮発性メモリが多く使われている。
前記不揮発性メモリのうち主に使われるフラッシュメモリは、電気的にデータを削除または再記録できる不揮発性記憶素子であって、マグネチックディスクメモリを基盤とする保存媒体に比べて電力消耗が少ないながらもハードディスクと同じく速いアクセスタイムを持ち、かつコンパクトなサイズのために携帯機器などに適している。
また、前記フラッシュメモリは、ハードウェアーの特性上既に記録されたデータに再記録する場合、該当データが記録されたブロック全体を削除する過程が必要である。
このように、前記フラッシュメモリでデータの記録及び削除単位の不一致により発生しうる性能低下を防止するために、論理アドレス及び物理アドレスの概念が導入された。
この時、前記論理アドレスは、ユーザーが所定のユーザープログラムを通じて前記フラッシュメモリで所定のデータ演算を行う場合に使われるアドレスであり、前記物理アドレスは、実際にフラッシュメモリで所定のデータ演算を行う場合に使われるアドレスである。
また、前記フラッシュメモリは一般的に、小ブロックフラッシュメモリと大ブロックフラッシュメモリとに大別できるが、前記小ブロックフラッシュメモリは、論理的な演算単位と物理的な演算単位とが同じである一方、前記大ブロックフラッシュメモリは、論理的な演算単位に比べて物理的な演算単位が大きいという特性を持つ。
すなわち、前記フラッシュメモリの論理的な演算単位及び物理的な演算単位をセクター及びページと称する場合を例として説明すれば、前記小ブロックフラッシュメモリは、前記セクター及びページの大きさが同じである一方、前記大ブロックフラッシュメモリは、前記ページが前記セクターに比べて所定倍数ほど大きい。
このようなフラッシュメモリのブロックは制限された削除回数を持つが、それは、前記フラッシュメモリは、所定ブロックに対する削除回数が基準値を超過するか、または物理的な特性のよくないブロックの場合に削除回数が前記基準値に近接すれば、エラーブロックが発生する恐れがあるからである。
この時、前記エラーブロックは、前記フラッシュメモリの工場出荷時に既に発生した初期エラーブロックと、前記フラッシュメモリのデータ演算中に発生するランタイムエラーブロックとに大別できる。
前記エラーブロックは、前記フラッシュメモリのあらゆるブロックで発生する可能性があり、前記フラッシュメモリの性能に大きな影響を及ぼすために、前記エラーブロックを効果的に処理できる多様な方法が提案されている。
図1は、一般的なフラッシュメモリの概略的な構造が図示された図面であって、前記フラッシュメモリで発生したエラーブロック処理のためのエラーブロック管理領域10と、データの演算が行われるデータ領域20とを含む。
ここで、前記エラーブロック管理領域10は、前記フラッシュメモリで発生したエラーブロックについてのマッピング情報を含むエラーブロック情報領域11と、前記エラーブロックに代えるための予備領域12とを含む。
この時、前記マッピング情報は、前記エラーブロックを前記予備領域12内の所定ブロックにマッピングさせるマッピングテーブルよりなる。
前記エラーブロック管理領域10を利用した従来の技術によるフラッシュメモリのデータ管理方法を説明すれば、図2に図示されたように、まず前記フラッシュメモリの所定ブロックに対する初期エラー表示を確認する(S11)。
前記初期エラー表示を通じて該当ブロックがエラーブロックであるかどうかを判断する(S12)。
すなわち、該当ブロックが初期エラーブロックであるかどうかを判断することである。
前記判断の結果、エラーブロックである場合、前記エラーブロックを前記フラッシュメモリの正常ブロックにマッピングさせる(S13)。
前記初期エラーブロックは、前記マッピング情報を通じて正常ブロックにマッピングされるが、前記初期エラーブロックは、前記マッピングテーブルにより前記予備領域12の所定ブロックにマッピングされる。
したがって、前記初期エラーブロックに所定のデータ演算が行われる場合、前記マッピングテーブルにより、前記予備領域12の所定ブロックでデータ演算が行われるようになる。
前記フラッシュメモリのあらゆるブロックについて初期エラーブロックの有無を判断するまで(S14)、次のブロックに移動して初期エラーブロックの有無を判断する過程S11、S12、S13を反復的に行う(S15)。
この時、前記判断の結果、正常ブロックと判断されたが、データ演算が行われる途中でデータ演算失敗が発生すれば、該当ブロックはランタイムエラーブロックと判断される。
このように前記ランタイムエラーブロックが発生した場合、フラッシュメモリのデータ管理方法は、図3に図示されたように、所定ブロックでデータ演算を行う途中(S21)でデータ演算が失敗したかどうかを判断する(S22)。
すなわち、図4Aに図示されたように、フラッシュメモリのデータ領域20に含まれた所定のブロック21でデータ演算を行う途中でデータ演算が失敗したかどうかを判断することである。
前記判断の結果、データ演算が失敗した場合、該当ブロックをエラーブロックと判断して前記マッピング情報に含める(S23)。
また、前記エラーブロックを前記予備領域12の所定ブロックにマッピングさせ(S24)、前記マッピングされたブロックでデータ演算を行わせる(S25)。
すなわち、図4Bに図示されたように、前記フラッシュメモリのデータ領域20の所定ブロック21のデータを、前記予備領域12の所定ブロック12aに移動させる。
それ以後に前記エラーブロックでデータ演算を行う場合には、前記マッピング情報によって、前記エラーブロックからマッピングされた前記予備領域12の所定ブロック12aでデータ演算が行われる。
この時、前記データ演算中のデータ書き込みを例として説明すれば、前記データ領域20の所定ブロック21でデータを書き込む途中でエラーブロックが発生すれば、前記データを前記予備領域12の所定ブロック12aに移動させる。
また、前記エラーブロック21でデータ演算を再び行う場合には、前記マッピング情報によって、前記予備領域12の所定ブロック12aでデータ書き込みが行われる。
以後、前記データ演算が完了するまで、データ演算中にエラーブロックが発生したかどうかを判断する過程S21、S22、S23、S24、S25を反復的に行う(S26)。
しかし、前記のような従来のフラッシュメモリのデータ管理方法は、単一フラッシュメモリに限って使用できるため、少なくとも一つ以上のフラッシュメモリを含むシステムでは使用し難い問題点がある。
特許文献1はフラッシュメモリの特定領域を予備(spare)領域で指定して、フラッシュメモリに使い動作が遂行された中特定ブロックにエラーが発生すると、特定ブロックを指定された予備領域のブロックに再割当てする再割当て機能を持つフラッシュメモリを利用した補助記憶装置及びその方法を開示しているが、これは単一フラッシュメモリで使い回数が限られたフラッシュメモリの特性上発生する書き込動作でのブロックエラー及びベッドブロック発生を解決するためのこととして多数のフラッシュメモリを含めるシステムに適用しがたい問題点がある。
韓国公開特許第1999−0055972号
本発明は複数のフラッシュメモリを使用するシステムで、前記フラッシュメモリで発生したエラーブロックを効率的に処理できるフラッシュメモリのデータ管理装置及びその方法を提供するところにその目的がある。
前記目的を達成するために、本発明の実施例によるフラッシュメモリのデータ管理装置は、少なくとも一つ以上のフラッシュメモリに対する動作を制御するデバイスドライバと、所定のフラッシュメモリでエラーブロックが発生した場合、前記エラーブロックに位置したデータを該当フラッシュメモリの所定ブロックに移動させる制御部と、を含む。
望ましくは、前記制御部は、マルチチャンネル方式によるデータ演算を行う場合、前記エラーブロックと同じオフセット値を持つ他のフラッシュメモリのブロックに位置したデータを、各フラッシュメモリの所定ブロックに移動させる。
望ましくは、前記制御部は、インターリーブ方式によるデータ演算を行う場合、各フラッシュメモリで同じオフセット値を持つブロックよりなる上位ブロックを生成する。
望ましくは、前記制御部は、前記エラーブロックを該当フラッシュメモリの所定ブロックに移動させ、前記所定ブロックを前記上位ブロックに含める。
一方、本発明の実施例によるフラッシュメモリのデータ管理方法は、少なくとも一つ以上のフラッシュメモリで発生したエラーブロックを把握する第1段階と、前記エラーブロックに位置したデータを該当フラッシュメモリの所定ブロックに移動させる第2段階と、を含む。
望ましくは、前記第1段階は、所定ブロックにデータ演算を行う場合、データ演算失敗如何によってエラーブロックを把握する。
望ましくは、前記第2段階は、マルチチャンネル方式によるデータ演算を行う場合、前記エラーブロックと同じオフセット値を持つ他のフラッシュメモリのブロックに位置したデータを、各フラッシュメモリの所定ブロックに移動させる。
望ましくは、前記第2段階は、インターリーブ方式によるデータ演算を行う場合、各フラッシュメモリで同じオフセット値を持つブロックよりなる上位ブロックを生成する過程を含む。
望ましくは、前記第2段階は、所定のフラッシュメモリで発生したエラーブロックを該当フラッシュメモリの所定ブロックに移動させる第1過程と、前記所定ブロックを前記上位ブロックに含める第2過程と、を含む。
その他の実施例の具体的な事項は詳細な説明及び図面に含まれている。
本発明のフラッシュメモリのデータ管理装置及びその方法によれば、次のような効果が一つまたはそれ以上ある。
第1に、少なくとも一つ以上のフラッシュメモリを使用するシステムで、各フラッシュメモリで発生したエラーブロックによる性能低下を効果的に防止できる。第2に、複数のフラッシュメモリのデータを管理する方式によってエラーブロックを処理する方法を異ならせて、各データ管理方式によって最適の性能を保証できる。
本発明の利点及び特徴、そしてこれを達成する方法は添付された図面に基づいて詳細に後述されている実施例を参照すれば明確になる。しかし、本発明は以下で開示される実施例に限定されるものではなく、この実施例から外れて多様な形に具現でき、本明細書で説明する実施例は本発明の開示を完全にし、本発明が属する技術分野で当業者に発明の範ちゅうを完全に報せるために提供されるものであり、本発明は請求項及び発明の詳細な説明により定義されるだけである。一方、明細書全体に亙って同一な参照符号は同一な構成要素を示す。
以下、添付された図面を参照して本発明の望ましい実施例を詳細に説明する。
最近複数のフラッシュメモリを使用するシステムは、主にマルチチャンネル方式及びインターリーブ方式を使用して全体的な性能を向上させている。
ここで、前記マルチチャンネル方式は、複数のフラッシュメモリを制御するための制御ラインを共有して使用するために、各フラッシュメモリに同時に並列的にデータを書き込みうる。
すなわち、図5Aに図示されたように、二つのフラッシュメモリ111、112を制御するデバイスドライバ113が制御ライン114を共有し、データライン115、116は各フラッシュメモリ111、112を別途に使用する。
したがって、前記マルチチャンネル方式は各フラッシュメモリのバスがnビット、フラッシュメモリの数をmと仮定すれば、n×mバスを持つ一つのフラッシュメモリのように使用できる。
このようなマルチチャンネル方式の動作は図5Bに図示されたように、前記マルチチャンネル方式は、制御ライン114を共有するために、データ演算命令及びデータ演算が行われるアドレスを含む制御信号117を、各フラッシュメモリ111、112に同時に伝送する。
また、前記各フラッシュメモリ111、112に対するデータライン115、116は別途に使用するために、各フラッシュメモリ111、112のデータのローディング118及びデータ演算119が同時に行われる。
この時、前記データローディング118は、各フラッシュメモリ111、112に該当するデータを共にローディングするために、総フラッシュメモリに該当するデータがローディングされる。
また、前記インターリーブ方式は、複数のフラッシュメモリがデータラインを共有するために、多重データ書き込み演算を行う場合を例として説明すれば、所定フラッシュメモリに対するデータローディング後、データを書き込む間に他のフラッシュメモリにデータをローディングできる。
このようなインターリーブ方式は、図6Aに図示されたように、二つのフラッシュメモリ121、122を制御するデバイスドライバ123が前記各フラッシュメモリ121、122とデータライン124を共有し、制御ライン125、126は、各フラッシュメモリ121、122を別途に使用する。
前記インターリーブ方式の動作は、図6Bに図示されたように、所定フラッシュメモリに、データ演算命令及びデータ演算が行われるアドレスを含む制御信号127aを伝送してデータローディング128aを行った後、データ演算129aが行われる間に他のフラッシュメモリにデータ演算命令及びデータ演算が行われるアドレスを含む制御信号127bを伝送し、データローディング128bを行ってデータ演算129bを行う。
本実施例は、前記のような複数のフラッシュメモリが使われたシステムで、前記各フラッシュメモリにエラーブロックが発生した場合、データの安定性確保及び効率的なエラーブロック処理のためのフラッシュメモリのデータ管理装置であって、図7に図示されたように、複数のフラッシュメモリ210、220、230の動作を制御するデバイスドライバ300と、所定のフラッシュメモリでエラーブロックが発生した場合、前記エラーブロックに位置したデータを該当フラッシュメモリの所定ブロックに移動させる制御部400と、を含む。
このようなフラッシュメモリのデータ管理装置を、前記マルチチャンネル方式及びインターリーブ方式を例として説明する。
まず、前記マルチチャンネル方式の場合、図8に図示されたように、各フラッシュメモリ510、520は、それぞれ発生したエラーブロックのマッピング情報を含む仮想ブロック管理領域511、521、前記エラーブロックに位置したデータが移動する予備領域512、522、及び所定のデータ演算が行われるデータ領域513、523に区分できる。
ここで、前記マルチチャンネル方式の特性上、各フラッシュメモリ510、520に並列的にデータの演算を行えるために前記各データ領域513、523で同じオフセット値を持つブロック513a、523aにデータが存在する。
この時、所定のフラッシュメモリでエラーブロックが発生すれば、前記制御部400は、前記エラーブロックに位置したデータを該当フラッシュメモリの予備領域内の所定ブロックに移動させる。
また、前記制御部400は、前記エラーブロックと同じオフセット値を持つ他のフラッシュメモリの正常ブロックに位置したデータも、該当フラッシュメモリの予備領域内の所定ブロックに移動させる。
それは、前記マルチチャンネル方式で各フラッシュメモリに並列的にデータ演算を行うために、所定のフラッシュメモリでエラーブロックが発生すれば、他のデータにも影響を及ぼしてデータの損失をもたらす恐れがあるために、各フラッシュメモリ510、520のデータを前記予備領域512、522の所定ブロックに移動させることである。
一方、他の実施例で前記インターリーブ方式の場合、前記マルチチャンネル方式と同じく、各フラッシュメモリ510、520は、エラーブロックのマッピング情報を含む仮想ブロック管理領域511、521、前記エラーブロックに位置したデータが移動する予備領域512、522、及び所定のデータ演算が行われるデータ領域513、523に区分できる。
また、前記制御部400は図9に図示されたように、各フラッシュメモリ510、520で同じオフセット値を持つブロック510a、520aを合わせた上位ブロック530を生成する。
ここで、前記仮想ブロック管理領域511、521は、図10に図示されたように、前記上位ブロック530に関する情報を含む上位ブロック管理領域511a、521aと、前記データ領域513、523でエラーブロックが発生した場合、前記エラーブロックを前記予備領域512、522に含まれた所定ブロックにマッピングさせるマッピングテーブルよりなるエラーブロック管理領域511b、521bとを含む。
したがって、前記制御部400は、前記上位ブロック管理領域511a、521aに含まれた上位ブロック530を通じて演算する時、図11に図示されたように、前記上位ブロック530に括られた各フラッシュメモリのブロック510a、520aでデータ演算を順次に行える。
この時、前記インターリーブ方式は、所定のフラッシュメモリでエラーブロックが発生した場合、該当フラッシュメモリの予備領域の所定ブロックに前記エラーブロックに位置したデータを移動させる。
また、前記各エラーブロックのような上位ブロックに含まれた他のフラッシュメモリのブロックは、前記予備領域の所定ブロックと共に再び同じ上位ブロックに含まれる。
このように前記予備領域内の所定ブロックと、再び上位ブロックに括られた他のフラッシュメモリのブロックとに関する情報は、前記上位ブロック管理領域511a、521aに保存されるために、再び該当上位ブロックに対するデータ演算を行う場合、前記エラーブロックではない前記予備領域内の所定ブロックでデータ演算を行う。
前記のように構成される本実施例によるフラッシュメモリのデータ管理方法を説明すれば次の通りである。
本実施例によるフラッシュメモリのデータ管理方法は、図12に図示されたように、まず複数のフラッシュメモリが使われるシステムで、各システムについての初期エラーブロック情報を把握する(S110)。
前記初期エラーブロックは、フラッシュメモリの工場出荷当時に発生したエラーブロックであって、前記初期エラーブロックを把握してそれを予備領域の所定ブロックにマッピングさせるマッピングテーブルを生成する(S120)。
このようなマッピングテーブルは、前記仮想ブロック管理領域511、521に保存され、所定のフラッシュメモリの初期エラーブロックでデータ演算を行う場合、前記予備領域にマッピングされたブロックでデータ演算を行わせる。
すなわち、前記初期エラーブロックは、図13に図示されたように、前記フラッシュメモリの工場出荷当時にデータ領域630に発生したエラーブロック631、632を意味する。
また、前記初期エラーブロック631、632は、前記予備領域620の所定ブロック621、622にマッピングされて、以後に前記初期エラーブロック631、632でデータ演算が行われる場合、前記予備領域620のマッピングされたブロック621、622でデータ演算を行わせる。
この時、前記初期エラーブロック631、632にマッピングされた前記予備領域620のブロックに対するマッピングテーブルは、前記仮想ブロック管理領域610に保存される。
このようなマッピングテーブルは、図14Aに図示されたように、前記予備領域620のブロックアドレスを該当エラーブロックに指定することもあり、図14Bに図示されたように、前記予備領域620の各ブロックに所定のオフセット値を指定し、前記オフセット値によるエラーブロックを指定することもある。
以後、ユーザーが所定のフラッシュメモリのブロックでのデータ演算を要請すれば(S130)、前記マッピングテーブルに含まれたブロックであるかどうかによりエラーブロックであるかどうかを判断する(S140)。
前記判断の結果、エラーブロックである場合、前記予備領域の所定ブロックでデータの演算が行われる(S150)。
もし、前記判断の結果、正常ブロックである場合、該当ブロックでデータ演算を行い(S160)、データ演算実行途中で演算失敗が発生するかどうかを判断する(S170)。
前記データ演算実行途中で演算失敗が発生すれば、前記演算失敗が発生したブロックをランタイムエラーブロックと判断し(S180)、前記データ演算失敗が発生したブロックを前記マッピングテーブルに追加して、前記予備領域の所定ブロックにマッピングさせる(S190)。
以後、前記予備領域の所定ブロックにデータを移動させ(S200)、再びデータ演算を行う(S210)。
この時、前記インターリーブ方式の場合、前記データ演算は、各フラッシュメモリで同じオフセット値を持つ括られた上位ブロックで行われる。
この時、前記予備領域の所定ブロックにデータを移動させる方法を、複数のフラッシュメモリを管理できる方法であるマルチチャンネル方式及びインターリーブ方式を例として説明する。
まず、前記マルチチャンネル方式の場合、図15に図示されたように、所定フラッシュメモリで発生したエラーブロックのデータを、該当フラッシュメモリの予備領域内の所定ブロックに移動させる(S311)。
以後、前記エラーブロックと同じオフセット値を持つ他のフラッシュメモリの正常ブロックに位置したデータを、各フラッシュメモリの予備領域内の所定ブロックに移動させる(S312)。
すなわち、前記マルチチャンネル方式は、図16に図示されたように、各フラッシュメモリ710、720のうち任意のフラッシュメモリ710のデータ領域713でエラーブロック713aが発生した場合、前記エラーブロック713aに位置したデータを、該当フラッシュメモリ710の予備領域712に含まれた所定ブロック712aに移動させる。
この時、前記エラーブロック713a及び前記予備領域712内の所定ブロック712aに対するマッピングテーブルはエラーブロック管理領域711に保存される。
この時、前記マルチチャンネル方式の特性上並列的にデータ演算を行うために、他のフラッシュメモリ720のデータ領域723で、前記エラーブロック713aと同じオフセット値を持つ正常ブロック723aに位置したデータも、該当フラッシュメモリ720の予備領域722に含まれた所定ブロック722aに移動する。
また、前記正常ブロック723a及び前記予備領域722に含まれた所定ブロック722aに対するマッピングテーブルは、該当フラッシュメモリ720のエラーブロック管理領域721に保存される。
一方、他の実施例で前記インターリーブ方式の場合、図17に図示されたように、まず、所定のフラッシュメモリで発生したエラーブロックに位置したデータを、該当フラッシュメモリの予備領域内の所定ブロックに移動させる(S321)。
また、前記所定ブロックは、前記エラーブロックと同じオフセット値を持つ他のフラッシュメモリのブロックと共に上位ブロックを構成する(S322)。
すなわち、前記インターリーブ方式は、図18に図示されたように、各フラッシュメモリ810、820いずれでもエラーブロックが発生していない場合、各フラッシュメモリ810、820のデータ領域813、823で、同じオフセット値を持つブロック813a、823aは同じ上位ブロック830に括られ、前記上位ブロック830に関する情報は、各フラッシュメモリ810、820の仮想ブロック管理領域811、821に含まれた上位ブロック管理領域に保存されるようにする。
以後に所定のフラッシュメモリ810で、前記上位ブロック830に含まれたブロック813aがエラーブロックとなる場合、図19に図示されたように、前記エラーブロック813aに位置したデータは、該当フラッシュメモリ810の予備領域812に含まれた所定ブロック812aに移動する。
また、前記エラーブロック813aと同じ上位ブロック830に含まれた他のフラッシュメモリ820のブロック823aは、前記予備領域812に含まれた所定ブロック812aと共に上位ブロック830を生成する。
この時、前記上位ブロック830に関する情報は、各フラッシュメモリ810、820の仮想ブロック管理領域811、821に含まれた上位ブロック管理領域に保存される。
本発明によるフラッシュメモリのデータ管理装置及びその方法を例示された図面を参照として説明したが、本発明は本明細書に開示された実施例及び図面によって限定されるものではなく、その発明の技術思想範囲内で当業者により多様に変形可能であることはいうまでもない。
本発明は、フラッシュメモリ技術分野に好適に適用できる。
一般的なフラッシュメモリの概略的な構造が図示された図面である。 従来技術による単一フラッシュメモリでの初期エラーブロック処理方法が図示された図面である。 従来の技術による単一フラッシュメモリでのランタイムエラーブロック処理方法が図示された図面である。 一般的な単一フラッシュメモリのデータ演算が図示された図面である。 一般的な単一フラッシュメモリのランタイムエラーブロックに位置したデータの移動が図示された図面である。 一般的なマルチチャンネル方式を利用したフラッシュメモリ基盤のシステムが図示された図面である。 一般的なマルチャンネル方式でのデータ演算過程が図示された図面である。 一般的なインターリーブ方式を使用したフラッシュメモリ基盤のシステムが図示された図面である。 一般的なインターリーブ方式でのデータ演算過程が図示された図面である。 本発明によるフラッシュメモリのデータ管理装置が図示された図面である。 本発明によるマルチャンネル方式でのデータ演算が図示された図面である。 本発明によるインターリーブ方式での上位ブロックが図示された図面である。 本発明によるインターリーブ方式での仮想ブロック管理領域が図示された図面である。 本発明による上位ブロックでのデータ演算が図示された図面である。 本発明によるフラッシュメモリのデータ管理方法が図示された図面である。 本発明による初期エラーブロックについての処理方法が図示された図面である。 本発明によるエラーブロックを予備領域の所定ブロックにマッピングさせるマッピングテーブルが図示された図面である。 本発明によるエラーブロックを予備領域の所定ブロックにマッピングさせるマッピングテーブルが図示された図面である。 本発明によるマルチャンネル方式でのランタイムエラーブロックの処理方法が図示された図面である。 本発明によるマルチャンネル方式でのランタイムエラーブロックに位置したデータを、予備領域の所定ブロックに移動させる方法が図示された図面である。 本発明によるインターリーブ方式でのランタイムエラーブロックの処理方法が図示された図面である。 本発明によるインターリーブ方式でのデータ演算方法が図示された図面である。 本発明によるインターリーブ方式でのランタイムエラーブロックに位置したデータを、予備領域の所定ブロックに移動させる方法が図示された図面である。
符号の説明
210、220、230 フラッシュメモリ
300 デバイスドライバ
400 制御部

Claims (9)

  1. 少なくとも一つ以上のフラッシュメモリに対する動作を制御するデバイスドライバと、
    所定のフラッシュメモリでエラーブロックが発生した場合、前記エラーブロックに位置したデータを該当フラッシュメモリの所定ブロックに移動させる制御部と、
    を含むことを特徴とするフラッシュメモリのデータ管理装置。
  2. 前記制御部は、マルチチャンネル方式によるデータ演算を行う場合、前記エラーブロックと同じオフセット値を持つ他のフラッシュメモリのブロックに位置したデータを、各フラッシュメモリの所定ブロックに移動させることを特徴とする請求項1に記載のフラッシュメモリのデータ管理装置。
  3. 前記制御部は、インターリーブ方式によるデータ演算を行う場合、各フラッシュメモリで同じオフセット値を持つブロックよりなる上位ブロックを生成することを特徴とする請求項1に記載のフラッシュメモリのデータ管理装置。
  4. 前記制御部は、前記エラーブロックを該当フラッシュメモリの所定ブロックに移動させ、前記所定ブロックを前記上位ブロックに含めることを特徴とする請求項3に記載のフラッシュメモリのデータ管理装置。
  5. 少なくとも一つ以上のフラッシュメモリで発生したエラーブロックを把握する第1段階と、
    前記エラーブロックに位置したデータを該当フラッシュメモリの所定ブロックに移動させる第2段階と、
    を含むことを特徴とするフラッシュメモリのデータ管理方法。
  6. 前記第1段階は、所定ブロックにデータ演算を行う場合、データ演算失敗如何によってエラーブロックを把握することを特徴とする請求項5に記載のフラッシュメモリのデータ管理方法。
  7. 前記第2段階は、マルチチャンネル方式によるデータ演算を行う場合、前記エラーブロックと同じオフセット値を持つ他のフラッシュメモリのブロックに位置したデータを、各フラッシュメモリの所定ブロックに移動させることを特徴とする請求項6に記載のフラッシュメモリのデータ管理方法。
  8. 前記第2段階は、インターリーブ方式によるデータ演算を行う場合、各フラッシュメモリで同じオフセット値を持つブロックよりなる上位ブロックを生成する過程を含むことを特徴とする請求項6に記載のフラッシュメモリのデータ管理方法。
  9. 前記第2段階は、所定のフラッシュメモリで発生したエラーブロックを該当フラッシュメモリの所定ブロックに移動させる第1過程と、
    前記所定ブロックを前記上位ブロックに含める第2過程と、を含むことを特徴とする請求項8に記載のフラッシュメモリのデータ管理方法。
JP2005004566A 2004-01-27 2005-01-11 フラッシュメモリのデータ管理装置及びその方法 Active JP4704759B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR2004-005020 2004-01-27
KR1020040005020A KR100608592B1 (ko) 2004-01-27 2004-01-27 플래시 메모리의 데이터 관리 장치 및 방법

Publications (2)

Publication Number Publication Date
JP2005216293A true JP2005216293A (ja) 2005-08-11
JP4704759B2 JP4704759B2 (ja) 2011-06-22

Family

ID=34698961

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005004566A Active JP4704759B2 (ja) 2004-01-27 2005-01-11 フラッシュメモリのデータ管理装置及びその方法

Country Status (6)

Country Link
US (1) US7454670B2 (ja)
EP (1) EP1564755B1 (ja)
JP (1) JP4704759B2 (ja)
KR (1) KR100608592B1 (ja)
CN (1) CN100334565C (ja)
DE (1) DE602005022512D1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102012101405A1 (de) 2011-02-23 2012-08-23 Denso Corporation Steuervorrichtung zum Steuern eines Datenlesens und - schreibens von und zu einem Flash-Speicher

Families Citing this family (78)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7259988B2 (en) * 2005-10-06 2007-08-21 Phison Electronics Corp. Method for managing memory blocks in flash memory
KR100675015B1 (ko) * 2006-02-24 2007-01-29 삼성전자주식회사 스캔 기능 및 컬럼 리던던시를 포함하는 내장형 메모리장치, 리던던시 리페어 및 스캔 방법
KR100844988B1 (ko) * 2006-09-07 2008-07-08 주식회사 스타칩 메모리 고속복사 장치 및 방법
KR101342074B1 (ko) * 2006-10-25 2013-12-18 삼성전자 주식회사 컴퓨터시스템 및 그 제어방법
US7793175B1 (en) 2007-01-10 2010-09-07 Marvell International Ltd. Automated scan testing of DDR SDRAM
WO2008087082A1 (en) * 2007-01-15 2008-07-24 Thomson Licensing Method and apparatus for recording data into a matrix of memory devices
US7669092B2 (en) 2007-02-26 2010-02-23 Micron Technology, Inc. Apparatus, method, and system of NAND defect management
US7996710B2 (en) * 2007-04-25 2011-08-09 Hewlett-Packard Development Company, L.P. Defect management for a semiconductor memory system
KR101091844B1 (ko) * 2007-05-17 2011-12-12 삼성전자주식회사 고속으로 배드 블록을 검색하는 플래시 메모리 시스템 및그것의 배드 블록 관리 방법
US7916540B2 (en) * 2007-05-17 2011-03-29 Samsung Electronics Co., Ltd. Non-volatile memory devices and systems including bad blocks address re-mapped and methods of operating the same
US20090013148A1 (en) * 2007-07-03 2009-01-08 Micron Technology, Inc. Block addressing for parallel memory arrays
WO2009095902A2 (en) 2008-01-31 2009-08-06 Densbits Technologies Ltd. Systems and methods for handling immediate data errors in flash memory
US8694715B2 (en) 2007-10-22 2014-04-08 Densbits Technologies Ltd. Methods for adaptively programming flash memory devices and flash memory systems incorporating same
US8341335B2 (en) 2007-12-05 2012-12-25 Densbits Technologies Ltd. Flash memory apparatus with a heating system for temporarily retired memory portions
US8359516B2 (en) 2007-12-12 2013-01-22 Densbits Technologies Ltd. Systems and methods for error correction and decoding on multi-level physical media
TW200931425A (en) * 2008-01-11 2009-07-16 Phison Electronics Corp Method for managing flash memory blocks and controller using the same
CN101533663B (zh) * 2008-03-11 2014-07-16 深圳市朗科科技股份有限公司 提高闪存介质数据存取速度的方法
US8972472B2 (en) 2008-03-25 2015-03-03 Densbits Technologies Ltd. Apparatus and methods for hardware-efficient unbiased rounding
TWI385667B (zh) * 2008-06-26 2013-02-11 Phison Electronics Corp 用於快閃記憶體的資料管理方法、儲存系統與控制器
US8095765B2 (en) 2009-03-04 2012-01-10 Micron Technology, Inc. Memory block management
US8819385B2 (en) 2009-04-06 2014-08-26 Densbits Technologies Ltd. Device and method for managing a flash memory
US8458574B2 (en) 2009-04-06 2013-06-04 Densbits Technologies Ltd. Compact chien-search based decoding apparatus and method
US8995197B1 (en) 2009-08-26 2015-03-31 Densbits Technologies Ltd. System and methods for dynamic erase and program control for flash memory device memories
US9330767B1 (en) 2009-08-26 2016-05-03 Avago Technologies General Ip (Singapore) Pte. Ltd. Flash memory module and method for programming a page of flash memory cells
US8730729B2 (en) 2009-10-15 2014-05-20 Densbits Technologies Ltd. Systems and methods for averaging error rates in non-volatile devices and storage systems
US8724387B2 (en) 2009-10-22 2014-05-13 Densbits Technologies Ltd. Method, system, and computer readable medium for reading and programming flash memory cells using multiple bias voltages
US8626988B2 (en) * 2009-11-19 2014-01-07 Densbits Technologies Ltd. System and method for uncoded bit error rate equalization via interleaving
US9037777B2 (en) 2009-12-22 2015-05-19 Densbits Technologies Ltd. Device, system, and method for reducing program/read disturb in flash arrays
US8745317B2 (en) 2010-04-07 2014-06-03 Densbits Technologies Ltd. System and method for storing information in a multi-level cell memory
US8621321B2 (en) 2010-07-01 2013-12-31 Densbits Technologies Ltd. System and method for multi-dimensional encoding and decoding
US8868852B2 (en) * 2010-07-07 2014-10-21 Marvell World Trade Ltd. Interface management control systems and methods for non-volatile semiconductor memory
US9141538B2 (en) * 2010-07-07 2015-09-22 Marvell World Trade Ltd. Apparatus and method for generating descriptors to transfer data to and from non-volatile semiconductor memory of a storage drive
US9135168B2 (en) 2010-07-07 2015-09-15 Marvell World Trade Ltd. Apparatus and method for generating descriptors to reaccess a non-volatile semiconductor memory of a storage drive due to an error
US8964464B2 (en) 2010-08-24 2015-02-24 Densbits Technologies Ltd. System and method for accelerated sampling
TWI435216B (zh) 2010-09-27 2014-04-21 Silicon Motion Inc 用來進行超區塊管理之方法以及記憶裝置及控制器
KR20120039985A (ko) 2010-10-18 2012-04-26 삼성전자주식회사 기록매체에 대한 리드 또는 라이트 처리 방법, 파라미터 조정 방법, 이를 적용한 저장 장치, 컴퓨터 시스템 및 저장매체
US9063878B2 (en) 2010-11-03 2015-06-23 Densbits Technologies Ltd. Method, system and computer readable medium for copy back
US8850100B2 (en) 2010-12-07 2014-09-30 Densbits Technologies Ltd. Interleaving codeword portions between multiple planes and/or dies of a flash memory device
JP2012173778A (ja) * 2011-02-17 2012-09-10 Sony Corp 管理装置、および管理方法
US8990665B1 (en) 2011-04-06 2015-03-24 Densbits Technologies Ltd. System, method and computer program product for joint search of a read threshold and soft decoding
US9110785B1 (en) 2011-05-12 2015-08-18 Densbits Technologies Ltd. Ordered merge of data sectors that belong to memory space portions
US9372792B1 (en) 2011-05-12 2016-06-21 Avago Technologies General Ip (Singapore) Pte. Ltd. Advanced management of a non-volatile memory
US9396106B2 (en) 2011-05-12 2016-07-19 Avago Technologies General Ip (Singapore) Pte. Ltd. Advanced management of a non-volatile memory
US9501392B1 (en) 2011-05-12 2016-11-22 Avago Technologies General Ip (Singapore) Pte. Ltd. Management of a non-volatile memory module
US9195592B1 (en) 2011-05-12 2015-11-24 Densbits Technologies Ltd. Advanced management of a non-volatile memory
US8996790B1 (en) 2011-05-12 2015-03-31 Densbits Technologies Ltd. System and method for flash memory management
US8947941B2 (en) 2012-02-09 2015-02-03 Densbits Technologies Ltd. State responsive operations relating to flash memory cells
US8996788B2 (en) 2012-02-09 2015-03-31 Densbits Technologies Ltd. Configurable flash interface
US8996793B1 (en) 2012-04-24 2015-03-31 Densbits Technologies Ltd. System, method and computer readable medium for generating soft information
US8838937B1 (en) 2012-05-23 2014-09-16 Densbits Technologies Ltd. Methods, systems and computer readable medium for writing and reading data
US8879325B1 (en) 2012-05-30 2014-11-04 Densbits Technologies Ltd. System, method and computer program product for processing read threshold information and for reading a flash memory module
US9921954B1 (en) 2012-08-27 2018-03-20 Avago Technologies General Ip (Singapore) Pte. Ltd. Method and system for split flash memory management between host and storage controller
US9368225B1 (en) 2012-11-21 2016-06-14 Avago Technologies General Ip (Singapore) Pte. Ltd. Determining read thresholds based upon read error direction statistics
US9069659B1 (en) 2013-01-03 2015-06-30 Densbits Technologies Ltd. Read threshold determination using reference read threshold
US8990614B2 (en) * 2013-03-14 2015-03-24 Apple Inc. Performance of a system having non-volatile memory
US8902532B2 (en) 2013-03-20 2014-12-02 International Business Machines Corporation Write avoidance areas around bad blocks on a hard disk drive platter
US9136876B1 (en) 2013-06-13 2015-09-15 Densbits Technologies Ltd. Size limited multi-dimensional decoding
US9413491B1 (en) 2013-10-08 2016-08-09 Avago Technologies General Ip (Singapore) Pte. Ltd. System and method for multiple dimension decoding and encoding a message
US9786388B1 (en) 2013-10-09 2017-10-10 Avago Technologies General Ip (Singapore) Pte. Ltd. Detecting and managing bad columns
US9397706B1 (en) 2013-10-09 2016-07-19 Avago Technologies General Ip (Singapore) Pte. Ltd. System and method for irregular multiple dimension decoding and encoding
US9348694B1 (en) 2013-10-09 2016-05-24 Avago Technologies General Ip (Singapore) Pte. Ltd. Detecting and managing bad columns
JP6221762B2 (ja) * 2014-01-16 2017-11-01 富士通株式会社 記憶装置、記憶方法及び制御装置
US9536612B1 (en) 2014-01-23 2017-01-03 Avago Technologies General Ip (Singapore) Pte. Ltd Digital signaling processing for three dimensional flash memory arrays
US10120792B1 (en) 2014-01-29 2018-11-06 Avago Technologies General Ip (Singapore) Pte. Ltd. Programming an embedded flash storage device
US9542262B1 (en) 2014-05-29 2017-01-10 Avago Technologies General Ip (Singapore) Pte. Ltd. Error correction
US9892033B1 (en) 2014-06-24 2018-02-13 Avago Technologies General Ip (Singapore) Pte. Ltd. Management of memory units
US9972393B1 (en) 2014-07-03 2018-05-15 Avago Technologies General Ip (Singapore) Pte. Ltd. Accelerating programming of a flash memory module
US9584159B1 (en) 2014-07-03 2017-02-28 Avago Technologies General Ip (Singapore) Pte. Ltd. Interleaved encoding
US9449702B1 (en) 2014-07-08 2016-09-20 Avago Technologies General Ip (Singapore) Pte. Ltd. Power management
US9524211B1 (en) 2014-11-18 2016-12-20 Avago Technologies General Ip (Singapore) Pte. Ltd. Codeword management
US9368152B1 (en) * 2014-11-25 2016-06-14 Seagate Technology Llc Flexible virtual defect padding
US10305515B1 (en) 2015-02-02 2019-05-28 Avago Technologies International Sales Pte. Limited System and method for encoding using multiple linear feedback shift registers
US10628255B1 (en) 2015-06-11 2020-04-21 Avago Technologies International Sales Pte. Limited Multi-dimensional decoding
US9851921B1 (en) 2015-07-05 2017-12-26 Avago Technologies General Ip (Singapore) Pte. Ltd. Flash memory chip processing
KR102535700B1 (ko) * 2016-02-01 2023-05-24 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
US9954558B1 (en) 2016-03-03 2018-04-24 Avago Technologies General Ip (Singapore) Pte. Ltd. Fast decoding of data stored in a flash memory
TWI687933B (zh) * 2017-03-03 2020-03-11 慧榮科技股份有限公司 資料儲存裝置及其區塊釋放方法
US10387281B2 (en) 2017-08-30 2019-08-20 Micron Technology, Inc. Flash memory block retirement policy

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0121800B1 (ko) * 1992-05-08 1997-11-22 사또오 후미오 메모리 카드장치
JPH0729392A (ja) 1993-06-24 1995-01-31 Toshiba Corp 不揮発性半導体メモリおよびそれを使用した半導体ディスク装置
US5930815A (en) * 1995-07-31 1999-07-27 Lexar Media, Inc. Moving sequential sectors within a block of information in a flash memory mass storage architecture
US5907856A (en) * 1995-07-31 1999-05-25 Lexar Media, Inc. Moving sectors within a block of information in a flash memory mass storage architecture
US6728851B1 (en) * 1995-07-31 2004-04-27 Lexar Media, Inc. Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
US6081878A (en) * 1997-03-31 2000-06-27 Lexar Media, Inc. Increasing the memory performance of flash memory devices by writing sectors simultaneously to multiple flash memory devices
US5930167A (en) * 1997-07-30 1999-07-27 Sandisk Corporation Multi-state non-volatile flash memory capable of being its own two state write cache
US6000006A (en) * 1997-08-25 1999-12-07 Bit Microsystems, Inc. Unified re-map and cache-index table with dual write-counters for wear-leveling of non-volatile flash RAM mass storage
KR19990055972A (ko) 1997-12-29 1999-07-15 윤종용 블록 재할당 기능을 갖는 플래시 메모리 이용 보조기억장치 및 그 방법
US6397313B1 (en) * 1999-10-19 2002-05-28 Advanced Micro Devices, Inc. Redundant dual bank architecture for a simultaneous operation flash memory
US6426893B1 (en) * 2000-02-17 2002-07-30 Sandisk Corporation Flash eeprom system with simultaneous multiple data sector programming and storage of physical block characteristics in other designated blocks
US6772274B1 (en) * 2000-09-13 2004-08-03 Lexar Media, Inc. Flash memory system and method implementing LBA to PBA correlation within flash memory array
JP3574078B2 (ja) * 2001-03-16 2004-10-06 東京エレクトロンデバイス株式会社 記憶装置と記憶装置制御方法
JP4034947B2 (ja) 2001-05-31 2008-01-16 株式会社ルネサステクノロジ 不揮発性記憶システム
EP1476873A4 (en) * 2002-02-22 2006-07-05 Lexar Media Inc MEMORY HOLDER WITH INTEGRATED LAMP LAMP
JP4196743B2 (ja) * 2003-06-12 2008-12-17 沖電気工業株式会社 半導体記憶装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102012101405A1 (de) 2011-02-23 2012-08-23 Denso Corporation Steuervorrichtung zum Steuern eines Datenlesens und - schreibens von und zu einem Flash-Speicher
JP2012174106A (ja) * 2011-02-23 2012-09-10 Denso Corp フラッシュメモリに対してデータの読み出しおよび書き込みを行う制御装置
US9058883B2 (en) 2011-02-23 2015-06-16 Denso Corporation Control apparatus for controlling data reading and writing to flash memory

Also Published As

Publication number Publication date
KR100608592B1 (ko) 2006-08-03
EP1564755A3 (en) 2007-07-25
US7454670B2 (en) 2008-11-18
DE602005022512D1 (de) 2010-09-09
JP4704759B2 (ja) 2011-06-22
EP1564755A2 (en) 2005-08-17
CN100334565C (zh) 2007-08-29
KR20050077505A (ko) 2005-08-03
CN1648876A (zh) 2005-08-03
US20050162947A1 (en) 2005-07-28
EP1564755B1 (en) 2010-07-28

Similar Documents

Publication Publication Date Title
JP4704759B2 (ja) フラッシュメモリのデータ管理装置及びその方法
JP5612514B2 (ja) 不揮発性メモリコントローラ及び不揮発性記憶装置
JP3892851B2 (ja) メモリカード及び半導体装置
KR101363766B1 (ko) 논리 유닛 동작
US8386698B2 (en) Data accessing method for flash memory and storage system and controller using the same
US9940201B2 (en) Disk array having mirror configuration and rebuilding method therefor
US20100161885A1 (en) Semiconductor storage device and storage controlling method
US20150242151A1 (en) Solid-state drive device
WO2009096180A1 (ja) メモリコントローラ、不揮発性記憶装置、及び、不揮発性記憶システム
JP2007299216A (ja) 不揮発性フラッシュメモリを用いる記憶装置とその制御方法
JP2007199905A (ja) 半導体記憶装置の制御方法
US9213636B2 (en) Data accessing method for flash memory storage device having data perturbation module, and storage system and controller using the same
JP2005293205A (ja) 記憶制御装置、制御方法、および制御プログラム。
JP4253272B2 (ja) メモリカード、半導体装置、及び半導体メモリの制御方法
JP5592478B2 (ja) 不揮発性記憶装置及びメモリコントローラ
JP2006195565A (ja) 半導体記憶装置の制御方法、メモリカード、及びホスト機器
JP4829202B2 (ja) 記憶装置及びメモリ制御方法
JPH01235075A (ja) ディスクメモリ制御装置
CN106569908B (zh) 资料备份系统
JP4952605B2 (ja) ディスクアレイ装置、データ切り戻し方法およびデータ切り戻しプログラム
JPH04283825A (ja) 半導体ディスク装置のデータ退避方法
JPH0916339A (ja) 読み出し制御装置
KR20160085035A (ko) 메모리제어장치 및 메모리제어장치의 동작 방법
JP2007102805A (ja) メモリシステム

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070821

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070828

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20071128

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20080507

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080904

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20080910

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20081107

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110105

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110310

R150 Certificate of patent or registration of utility model

Ref document number: 4704759

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

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