JP5950286B2 - アドレス変換テーブルを書き込む装置及び方法 - Google Patents
アドレス変換テーブルを書き込む装置及び方法 Download PDFInfo
- Publication number
- JP5950286B2 JP5950286B2 JP2014111591A JP2014111591A JP5950286B2 JP 5950286 B2 JP5950286 B2 JP 5950286B2 JP 2014111591 A JP2014111591 A JP 2014111591A JP 2014111591 A JP2014111591 A JP 2014111591A JP 5950286 B2 JP5950286 B2 JP 5950286B2
- Authority
- JP
- Japan
- Prior art keywords
- block
- copy
- address conversion
- conversion table
- address
- 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.)
- Active
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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
- G06F3/0649—Lifecycle management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
- G06F2212/1036—Life time enhancement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/20—Employing a main memory using a specific memory technology
- G06F2212/202—Non-volatile memory
- G06F2212/2022—Flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7201—Logical to physical mapping or translation of blocks or pages
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7211—Wear leveling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
Description
本実施の形態は、書き込み粒度が例えば数十セルと小さく、フラッシュメモリのような消去動作が不要な相変化メモリにおいて、アドレス変換テーブルを複数保持するものである。これにより、システムのオーバーヘッドを増大させることなく、ウェアレベリングを行うメモリシステムの信頼性を向上する。
図4は、本実施の形態におけるメモリシステムの全体構成例を示した図である。図示するように、このメモリシステムは、メモリ10と、メモリコントローラ20とを含む。
図5は、メモリシステムを起動したときのメモリコントローラ20の動作例を示したフローチャートである。
Claims (10)
- 不揮発性メモリのウェアレベリングのためのアドレス変換テーブルを当該不揮発性メモリに書き込む装置であって、
前記不揮発性メモリの第1のブロックのウェアレベリングのための第1のアドレス変換テーブルと、前記不揮発性メモリの当該第1のブロック以外の第2のブロックのウェアレベリングのための第2のアドレス変換テーブルと、前記不揮発性メモリの当該第1のブロック以外の第3のブロックのウェアレベリングのための第3のアドレス変換テーブルとを保持する保持部と、
前記第1のアドレス変換テーブルの一の複製に加えて前記第2のアドレス変換テーブルの複製を前記第1のブロックに書き込み、前記第3のアドレス変換テーブルの複製に加えて前記第1のアドレス変換テーブルの他の複製を前記第3のブロックに書き込む書き込み部と
を含む、装置。 - 前記書き込み部は、前記第1のブロックのウェアレベリングのために当該第1のブロック内のデータの配置の変更を行った後に、当該変更に応じて更新された前記第1のアドレス変換テーブルの前記他の複製を前記第3のブロックに書き込み、その後、当該変更に応じて更新された前記第1のアドレス変換テーブルの前記一の複製を前記第1のブロックに書き込む、請求項1の装置。
- 前記書き込み部は、前記第1のブロック内のデータの配置の変更に続けてバンクインターリーブにより、当該変更に応じて更新された前記第1のアドレス変換テーブルの前記他の複製を前記第3のブロックに書き込む、請求項2の装置。
- 前記書き込み部は、前記第1のアドレス変換テーブルの前記一の複製と前記第2のアドレス変換テーブルの複製とを前記第1のブロックの所定の領域に単一の書き込み動作で書き込み、前記第3のアドレス変換テーブルの複製と前記第1のアドレス変換テーブルの前記他の複製とを前記第3のブロックの所定の領域に単一の書き込み動作で書き込む、請求項1の装置。
- 前記保持部は、自装置が起動した際に、前記一の複製と前記他の複製とが一致すれば、前記第1のアドレス変換テーブルを保持し、前記一の複製と前記他の複製とが一致しなければ、当該一の複製及び当該他の複製のうちのエラーが発生していない方を前記第1のアドレス変換テーブルとして保持する、請求項1乃至請求項4の何れかの装置。
- 前記保持部は、自装置が起動した際に、前記一の複製と前記他の複製とが一致すれば、前記第1のアドレス変換テーブルを保持し、前記一の複製と前記他の複製とが一致しなければ、前記第1のブロックへの書き込みを禁止する旨の情報を保持する、請求項1乃至請求項4の何れかの装置。
- 複数のブロックからなる不揮発性メモリであって、
前記複数のブロックのうちの第1のブロックは、当該第1のブロックのウェアレベリングのための第1のアドレス変換テーブルの一の複製と、前記複数のブロックのうちの当該第1のブロック以外の第2のブロックのウェアレベリングのための第2のアドレス変換テーブルの複製とを、所定の領域に格納し、
前記複数のブロックのうちの前記第1のブロック以外の第3のブロックは、当該第3のブロックのウェアレベリングのための第3のアドレス変換テーブルの複製と、前記第1のアドレス変換テーブルの他の複製とを、所定の領域に格納する、不揮発性メモリ。 - 前記第2のブロックと前記第3のブロックとは、同じブロックであり、
前記第2のアドレス変換テーブルと前記第3のアドレス変換テーブルとは、同じアドレス変換テーブルである、請求項7の不揮発性メモリ。 - 不揮発性メモリと当該不揮発性メモリを制御する制御装置とを含むシステムであって、
前記不揮発性メモリは、
第1のブロックと、
前記第1のブロック以外の第2のブロックと、
前記第1のブロック以外の第3のブロックと
を含み、
前記制御装置は、
前記第1のブロックのウェアレベリングのための第1のアドレス変換テーブルと、前記第2のブロックのウェアレベリングのための第2のアドレス変換テーブルと、前記第3のブロックのウェアレベリングのための第3のアドレス変換テーブルとを保持する保持部と、
前記第1のアドレス変換テーブルの一の複製に加えて前記第2のアドレス変換テーブルの複製を前記第1のブロックに書き込み、前記第3のアドレス変換テーブルの複製に加えて前記第1のアドレス変換テーブルの他の複製を前記第3のブロックに書き込む書き込み部と
を含む、システム。 - 不揮発性メモリのウェアレベリングのためのアドレス変換テーブルを当該不揮発性メモリに書き込む方法であって、
前記不揮発性メモリの第1のブロックのウェアレベリングのための第1のアドレス変換テーブルの一の複製を、当該第1のブロックに書き込むステップと、
前記不揮発性メモリの前記第1のブロック以外の第2のブロックのウェアレベリングのための第2のアドレス変換テーブルの複製を、前記第1のブロックに書き込むステップと、
前記不揮発性メモリの前記第1のブロック以外の第3のブロックのウェアレベリングのための第3のアドレス変換テーブルの複製を、当該第3のブロックに書き込むステップと、
前記第1のアドレス変換テーブルの他の複製を、前記第3のブロックに書き込むステップと
を含む、方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014111591A JP5950286B2 (ja) | 2014-05-29 | 2014-05-29 | アドレス変換テーブルを書き込む装置及び方法 |
US14/723,611 US9710375B2 (en) | 2014-05-29 | 2015-05-28 | Writing an address conversion table for nonvolatile memory wear leveling |
US15/346,874 US9710378B2 (en) | 2014-05-29 | 2016-11-09 | Writing an address conversion table for nonvolatile memory wear leveling |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014111591A JP5950286B2 (ja) | 2014-05-29 | 2014-05-29 | アドレス変換テーブルを書き込む装置及び方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015225608A JP2015225608A (ja) | 2015-12-14 |
JP5950286B2 true JP5950286B2 (ja) | 2016-07-13 |
Family
ID=54701899
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014111591A Active JP5950286B2 (ja) | 2014-05-29 | 2014-05-29 | アドレス変換テーブルを書き込む装置及び方法 |
Country Status (2)
Country | Link |
---|---|
US (2) | US9710375B2 (ja) |
JP (1) | JP5950286B2 (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5950286B2 (ja) | 2014-05-29 | 2016-07-13 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | アドレス変換テーブルを書き込む装置及び方法 |
US10175889B2 (en) * | 2016-03-10 | 2019-01-08 | Toshiba Memory Corporation | Memory system capable of accessing memory cell arrays in parallel |
KR102514717B1 (ko) * | 2016-10-24 | 2023-03-27 | 삼성전자주식회사 | 메모리 컨트롤러 및 이를 포함하는 메모리 시스템 |
KR20180060084A (ko) * | 2016-11-28 | 2018-06-07 | 삼성전자주식회사 | 반도체 메모리 장치의 스크러빙 컨트롤러, 반도체 메모리 장치 및 반도체 메모리 장치의 동작 방법 |
KR20180123385A (ko) * | 2017-05-08 | 2018-11-16 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이를 이용한 웨어-레벨링 방법 |
US11061598B2 (en) * | 2019-03-25 | 2021-07-13 | Western Digital Technologies, Inc. | Optimized handling of multiple copies in storage management |
JP2021179672A (ja) * | 2020-05-11 | 2021-11-18 | ソニーセミコンダクタソリューションズ株式会社 | メモリモジュール |
US20230315661A1 (en) * | 2022-04-01 | 2023-10-05 | Texas Instruments Incorporated | Methods and apparatus to configure an integrated circuit using a direct memory access controller |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5448718A (en) | 1992-04-20 | 1995-09-05 | International Business Machines Corporation | Method and system for time zero backup session security |
JPH07248978A (ja) | 1994-03-11 | 1995-09-26 | Fuji Film Micro Device Kk | 不揮発性メモリ |
JPH07302176A (ja) | 1994-05-09 | 1995-11-14 | Toshiba Corp | 半導体ディスク装置 |
JPH10312338A (ja) | 1997-05-13 | 1998-11-24 | Toshiba Corp | メモリ制御装置、及びメモリ制御方法 |
JPH11312338A (ja) | 1999-02-12 | 1999-11-09 | Sony Corp | 光記録媒体 |
JP3785074B2 (ja) | 2001-10-05 | 2006-06-14 | 富士通株式会社 | データ処理システムのバックアップ制御装置及び方法 |
JP4058322B2 (ja) * | 2002-10-07 | 2008-03-05 | 株式会社ルネサステクノロジ | メモリカード |
JP2004139503A (ja) | 2002-10-21 | 2004-05-13 | Matsushita Electric Ind Co Ltd | 記憶装置及びその制御方法 |
JP5130646B2 (ja) | 2005-06-06 | 2013-01-30 | ソニー株式会社 | 記憶装置 |
US20070083697A1 (en) | 2005-10-07 | 2007-04-12 | Microsoft Corporation | Flash memory management |
KR101464338B1 (ko) * | 2007-10-25 | 2014-11-25 | 삼성전자주식회사 | 불휘발성 메모리 장치를 이용한 데이터 저장장치, 메모리시스템, 그리고 컴퓨터 시스템 |
JP4909963B2 (ja) | 2008-09-09 | 2012-04-04 | 株式会社東芝 | 統合メモリ管理装置 |
JP5525605B2 (ja) * | 2009-11-04 | 2014-06-18 | 株式会社日立製作所 | フラッシュメモリモジュール |
US8495338B2 (en) | 2010-12-03 | 2013-07-23 | Micron Technology, Inc. | Transaction log recovery |
JP5221699B2 (ja) * | 2011-03-23 | 2013-06-26 | 株式会社東芝 | 半導体記憶装置 |
JP5364807B2 (ja) | 2011-06-08 | 2013-12-11 | パナソニック株式会社 | メモリコントローラ及び不揮発性記憶装置 |
JP2013196155A (ja) | 2012-03-16 | 2013-09-30 | Toshiba Corp | メモリシステム |
JP2013257679A (ja) * | 2012-06-12 | 2013-12-26 | Sony Corp | 情報処理装置および方法、並びに、プログラム |
JP5950286B2 (ja) | 2014-05-29 | 2016-07-13 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | アドレス変換テーブルを書き込む装置及び方法 |
-
2014
- 2014-05-29 JP JP2014111591A patent/JP5950286B2/ja active Active
-
2015
- 2015-05-28 US US14/723,611 patent/US9710375B2/en active Active
-
2016
- 2016-11-09 US US15/346,874 patent/US9710378B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20170052888A1 (en) | 2017-02-23 |
JP2015225608A (ja) | 2015-12-14 |
US9710378B2 (en) | 2017-07-18 |
US9710375B2 (en) | 2017-07-18 |
US20150347292A1 (en) | 2015-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5950286B2 (ja) | アドレス変換テーブルを書き込む装置及び方法 | |
US8448018B2 (en) | Stripe-based memory operation | |
CN102023815B (zh) | 在固态存储器中实现raid | |
JP4901987B1 (ja) | 記憶装置、電子機器及び誤りデータの訂正方法 | |
JP5585919B2 (ja) | 電源遮断管理 | |
CN102929750A (zh) | 非易失性介质肮脏区段跟踪 | |
KR20130088173A (ko) | 트랜잭션 로그 복구 | |
WO2009156870A1 (en) | Method and apparatus for error correction | |
US20130166991A1 (en) | Non-Volatile Semiconductor Memory Device Using Mats with Error Detection and Correction and Methods of Managing the Same | |
US20150113311A1 (en) | Storage control apparatus, storage apparatus, information processing system, and storage control method therefor | |
JPWO2009004674A1 (ja) | 記憶装置、ディスク装置、書込み判定方法、制御装置 | |
CN112753021A (zh) | 跟踪错误-校正奇偶校验计算 | |
US20210342236A1 (en) | Data recovery within a memory sub-system | |
US8533560B2 (en) | Controller, data storage device and program product | |
US11520491B2 (en) | Parity protection in non-volatile memory | |
JP4956230B2 (ja) | メモリコントローラ | |
TWI557559B (zh) | 利用快閃記憶體的壞頁來存取資料的方法 | |
KR101548452B1 (ko) | 비휘발성 메모리 기반의 전자 장치의 메타 데이터 복원 방법 및 장치 | |
CN112860182B (zh) | 用于写回合并的位屏蔽有效扇区 | |
CN116909802A (zh) | 用于经分区存储系统的动态rain |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160112 |
|
A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20160323 |
|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20160406 |
|
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: 20160510 |
|
RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20160510 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160531 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5950286 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |