JP6816253B2 - 不揮発性メモリのユーザ設定可能なウェアレベリング用のシステム、方法、及びデバイス - Google Patents
不揮発性メモリのユーザ設定可能なウェアレベリング用のシステム、方法、及びデバイス Download PDFInfo
- Publication number
- JP6816253B2 JP6816253B2 JP2019503550A JP2019503550A JP6816253B2 JP 6816253 B2 JP6816253 B2 JP 6816253B2 JP 2019503550 A JP2019503550 A JP 2019503550A JP 2019503550 A JP2019503550 A JP 2019503550A JP 6816253 B2 JP6816253 B2 JP 6816253B2
- Authority
- JP
- Japan
- Prior art keywords
- wear leveling
- memory
- logical
- partition
- partitions
- 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 OR CALCULATING; 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/349—Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
- G11C16/3495—Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0646—Configuration or reconfiguration
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/1041—Resource optimization
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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)
Applications Claiming Priority (5)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201662403340P | 2016-10-03 | 2016-10-03 | |
| US62/403,340 | 2016-10-03 | ||
| US15/388,892 US10489064B2 (en) | 2016-10-03 | 2016-12-22 | Systems, methods, and devices for user configurable wear leveling of non-volatile memory |
| US15/388,892 | 2016-12-22 | ||
| PCT/US2017/046142 WO2018067230A1 (en) | 2016-10-03 | 2017-08-09 | Systems, methods, and devices for user configurable wear leveling of non-volatile memory |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2020213887A Division JP7209684B2 (ja) | 2016-10-03 | 2020-12-23 | 不揮発性メモリのユーザ設定可能なウェアレベリング用のシステム、方法、及びデバイス |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2019533213A JP2019533213A (ja) | 2019-11-14 |
| JP2019533213A5 JP2019533213A5 (https=) | 2020-04-09 |
| JP6816253B2 true JP6816253B2 (ja) | 2021-01-20 |
Family
ID=61758166
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2019503550A Active JP6816253B2 (ja) | 2016-10-03 | 2017-08-09 | 不揮発性メモリのユーザ設定可能なウェアレベリング用のシステム、方法、及びデバイス |
| JP2020213887A Active JP7209684B2 (ja) | 2016-10-03 | 2020-12-23 | 不揮発性メモリのユーザ設定可能なウェアレベリング用のシステム、方法、及びデバイス |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2020213887A Active JP7209684B2 (ja) | 2016-10-03 | 2020-12-23 | 不揮発性メモリのユーザ設定可能なウェアレベリング用のシステム、方法、及びデバイス |
Country Status (5)
| Country | Link |
|---|---|
| US (2) | US10489064B2 (https=) |
| JP (2) | JP6816253B2 (https=) |
| CN (2) | CN115064199B (https=) |
| DE (1) | DE112017005020T5 (https=) |
| WO (1) | WO2018067230A1 (https=) |
Families Citing this family (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10489064B2 (en) * | 2016-10-03 | 2019-11-26 | Cypress Semiconductor Corporation | Systems, methods, and devices for user configurable wear leveling of non-volatile memory |
| US10832753B2 (en) * | 2017-07-31 | 2020-11-10 | General Electric Company | Components including structures having decoupled load paths |
| US10198195B1 (en) * | 2017-08-04 | 2019-02-05 | Micron Technology, Inc. | Wear leveling |
| US10409716B2 (en) | 2017-10-11 | 2019-09-10 | Western Digital Technologies, Inc. | Non-volatile memory with adaptive wear leveling |
| US11056206B2 (en) * | 2017-10-11 | 2021-07-06 | Western Digital Technologies, Inc. | Non-volatile memory with dynamic wear leveling group configuration |
| US10656844B2 (en) | 2017-10-11 | 2020-05-19 | Western Digital Technologies, Inc. | Non-volatile memory with regional and inter-region wear leveling |
| US10620867B2 (en) * | 2018-06-04 | 2020-04-14 | Dell Products, L.P. | System and method for performing wear leveling at a non-volatile firmware memory |
| CN110187999B (zh) * | 2019-05-09 | 2021-04-27 | 新华三技术有限公司 | 地址映射数据备份方法及装置 |
| US11436153B2 (en) * | 2020-05-26 | 2022-09-06 | Western Digital Technologies, Inc. | Moving change log tables to align to zones |
| US11314446B2 (en) * | 2020-06-25 | 2022-04-26 | Micron Technology, Inc. | Accelerated read translation path in memory sub-system |
| JP2022074450A (ja) * | 2020-11-04 | 2022-05-18 | キオクシア株式会社 | メモリカード、メモリシステム、及びファイルの断片化解消方法 |
| CN113127377B (zh) * | 2021-04-08 | 2022-11-25 | 武汉导航与位置服务工业技术研究院有限责任公司 | 一种非易失存储器件写擦除的磨损均衡方法 |
| DE102021120381A1 (de) | 2021-08-05 | 2023-02-09 | Harman Becker Automotive Systems Gmbh | Vorrichtung und Verfahren zur Verwaltung eines Speichers |
| US20230073503A1 (en) * | 2021-09-07 | 2023-03-09 | Micron Technology, Inc. | Security file system for a memory system |
| JP2023153674A (ja) | 2022-04-05 | 2023-10-18 | キオクシア株式会社 | メモリシステム |
| US12009038B2 (en) * | 2022-04-20 | 2024-06-11 | Micron Technology, Inc. | Memory device wear leveling |
Family Cites Families (27)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6230233B1 (en) | 1991-09-13 | 2001-05-08 | Sandisk Corporation | Wear leveling techniques for flash EEPROM systems |
| US20060282610A1 (en) * | 2005-06-08 | 2006-12-14 | M-Systems Flash Disk Pioneers Ltd. | Flash memory with programmable endurance |
| CN100533409C (zh) * | 2005-07-29 | 2009-08-26 | 松下电器产业株式会社 | 存储器控制器,非易失性存储设备,非易失性存储系统,和非易失性存储器地址管理方法 |
| US20070174549A1 (en) * | 2006-01-24 | 2007-07-26 | Yevgen Gyl | Method for utilizing a memory interface to control partitioning of a memory module |
| US7710777B1 (en) * | 2006-12-20 | 2010-05-04 | Marvell International Ltd. | Semi-volatile NAND flash memory |
| US7804718B2 (en) | 2007-03-07 | 2010-09-28 | Mosaid Technologies Incorporated | Partial block erase architecture for flash memory |
| WO2009100149A1 (en) * | 2008-02-10 | 2009-08-13 | Rambus, Inc. | Segmentation of flash memory for partial volatile storage |
| JP4522464B2 (ja) * | 2008-04-22 | 2010-08-11 | シャープ株式会社 | 帯電装置および画像形成装置 |
| JP4439569B2 (ja) * | 2008-04-24 | 2010-03-24 | 株式会社東芝 | メモリシステム |
| US9123422B2 (en) | 2012-07-02 | 2015-09-01 | Super Talent Technology, Corp. | Endurance and retention flash controller with programmable binary-levels-per-cell bits identifying pages or blocks as having triple, multi, or single-level flash-memory cells |
| US8135907B2 (en) * | 2008-06-30 | 2012-03-13 | Oracle America, Inc. | Method and system for managing wear-level aware file systems |
| FR2933803B1 (fr) * | 2008-07-08 | 2010-09-24 | Thales Sa | Dispositif et procede de sauvegarde de donnees sur des supports de memoire non volatile, de type flash nand, destines a des calculateurs embarques |
| US20100199020A1 (en) * | 2009-02-04 | 2010-08-05 | Silicon Storage Technology, Inc. | Non-volatile memory subsystem and a memory controller therefor |
| 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 |
| US9104547B2 (en) * | 2011-08-03 | 2015-08-11 | Micron Technology, Inc. | Wear leveling for a memory device |
| US8832506B2 (en) | 2012-01-20 | 2014-09-09 | International Business Machines Corporation | Bit error rate based wear leveling for solid state drive memory |
| CN103176752A (zh) * | 2012-07-02 | 2013-06-26 | 晶天电子(深圳)有限公司 | 带有耐用转换层及临时文件转移功能从而实现闪速存储器磨损降低的超耐用固态驱动器 |
| JP5788369B2 (ja) * | 2012-09-12 | 2015-09-30 | 株式会社東芝 | メモリシステム、コンピュータシステム、およびメモリ管理方法 |
| US8902669B2 (en) | 2012-11-08 | 2014-12-02 | SanDisk Technologies, Inc. | Flash memory with data retention bias |
| US9298608B2 (en) * | 2013-10-18 | 2016-03-29 | Sandisk Enterprise Ip Llc | Biasing for wear leveling in storage systems |
| KR20150068747A (ko) * | 2013-12-12 | 2015-06-22 | 삼성전자주식회사 | 비휘발성 메모리 시스템, 이를 포함하는 모바일 장치 및 비휘발성 메모리 시스템의 동작방법 |
| JP2015204073A (ja) * | 2014-04-16 | 2015-11-16 | キヤノン株式会社 | 情報処理装置、情報処理端末、情報処理方法およびプログラム |
| JP6107802B2 (ja) * | 2014-12-15 | 2017-04-05 | コニカミノルタ株式会社 | 不揮発性メモリ制御装置、不揮発性メモリ制御方法及びプログラム |
| US20160179428A1 (en) | 2014-12-22 | 2016-06-23 | Sandisk Technologies Inc. | Dynamic programming adjustments in memory for non-critical or low power mode tasks |
| US10255191B2 (en) * | 2015-08-13 | 2019-04-09 | Advanced Micro Devices, Inc. | Logical memory address regions |
| CN109358804B (zh) * | 2015-09-29 | 2022-03-29 | 华为技术有限公司 | 一种数据处理方法、装置及闪存设备 |
| US10489064B2 (en) * | 2016-10-03 | 2019-11-26 | Cypress Semiconductor Corporation | Systems, methods, and devices for user configurable wear leveling of non-volatile memory |
-
2016
- 2016-12-22 US US15/388,892 patent/US10489064B2/en active Active
-
2017
- 2017-08-09 JP JP2019503550A patent/JP6816253B2/ja active Active
- 2017-08-09 CN CN202210572068.1A patent/CN115064199B/zh active Active
- 2017-08-09 WO PCT/US2017/046142 patent/WO2018067230A1/en not_active Ceased
- 2017-08-09 CN CN201780056864.7A patent/CN109716281B/zh active Active
- 2017-08-09 DE DE112017005020.0T patent/DE112017005020T5/de active Pending
-
2019
- 2019-10-16 US US16/655,091 patent/US11256426B2/en active Active
-
2020
- 2020-12-23 JP JP2020213887A patent/JP7209684B2/ja active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2021061028A (ja) | 2021-04-15 |
| WO2018067230A1 (en) | 2018-04-12 |
| US10489064B2 (en) | 2019-11-26 |
| US20180095678A1 (en) | 2018-04-05 |
| CN109716281A (zh) | 2019-05-03 |
| CN109716281B (zh) | 2022-06-17 |
| CN115064199A (zh) | 2022-09-16 |
| US11256426B2 (en) | 2022-02-22 |
| CN115064199B (zh) | 2023-08-18 |
| JP2019533213A (ja) | 2019-11-14 |
| JP7209684B2 (ja) | 2023-01-20 |
| US20200192583A1 (en) | 2020-06-18 |
| DE112017005020T5 (de) | 2019-08-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6816253B2 (ja) | 不揮発性メモリのユーザ設定可能なウェアレベリング用のシステム、方法、及びデバイス | |
| USRE50315E1 (en) | Adaptive garbage collection including flash memory using age and staleness parameters | |
| US9678676B2 (en) | Method for storage devices to achieve low write amplification with low over provision | |
| JP5613260B2 (ja) | フラッシュ型メモリ・システムにおけるアクセス競合の低減方法、プログラム及びシステム | |
| US9342458B2 (en) | Cache allocation in a computerized system | |
| JP2021061028A5 (https=) | ||
| RU2661280C2 (ru) | Контроллер массива, твердотельный диск и способ для управления твердотельным диском для записи данных | |
| JP2019533213A5 (https=) | ||
| US9666244B2 (en) | Dividing a storage procedure | |
| EP1548599A2 (en) | Faster write operations to nonvolatile memory by manipulation of frequently accessed sectors | |
| US9627072B2 (en) | Variant operation sequences for multibit memory | |
| EP2441004A2 (en) | Memory system having persistent garbage collection | |
| KR20100037860A (ko) | 반도체 스토리지 시스템 및 그 제어 방법 | |
| US20130173842A1 (en) | Adaptive Logical Group Sorting to Prevent Drive Fragmentation | |
| US11055004B2 (en) | Data storage device and control method for non-volatile memory | |
| US20140281132A1 (en) | Method and system for ram cache coalescing | |
| KR102534648B1 (ko) | 메모리 시스템 및 그것의 동작 방법 | |
| US11269534B2 (en) | Data storage device and non-volatile memory control method | |
| CN110007876A (zh) | 一种固态硬盘数据存储方法、装置、设备及介质 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200226 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200226 |
|
| A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20200226 |
|
| A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20200228 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200722 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200825 |
|
| RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20200904 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201111 |
|
| 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: 20201124 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20201223 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6816253 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| 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 |