JP6847764B2 - フラッシュメモリの割当方法及びそれを用いたソリッドステートドライブ - Google Patents
フラッシュメモリの割当方法及びそれを用いたソリッドステートドライブ Download PDFInfo
- Publication number
- JP6847764B2 JP6847764B2 JP2017099640A JP2017099640A JP6847764B2 JP 6847764 B2 JP6847764 B2 JP 6847764B2 JP 2017099640 A JP2017099640 A JP 2017099640A JP 2017099640 A JP2017099640 A JP 2017099640A JP 6847764 B2 JP6847764 B2 JP 6847764B2
- Authority
- JP
- Japan
- Prior art keywords
- flash memory
- requirements
- physical flash
- bit error
- memory blocks
- 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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- 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/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0706—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
- G06F11/073—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in a memory management context, e.g. virtual memory or cache management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/076—Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0766—Error or fault reporting or storing
- G06F11/0772—Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/079—Root cause analysis, i.e. error or fault diagnosis
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1044—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- 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
- 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/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- 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
-
- 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/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- 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
- 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/10—Programming or data input circuits
- G11C16/14—Circuits for erasing electrically, e.g. erase voltage switching circuits
-
- 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
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)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
- Memory System (AREA)
- Detection And Correction Of Errors (AREA)
- Debugging And Monitoring (AREA)
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201662352509P | 2016-06-20 | 2016-06-20 | |
| US62/352,509 | 2016-06-20 | ||
| US15/242,433 | 2016-08-19 | ||
| US15/242,433 US10055159B2 (en) | 2016-06-20 | 2016-08-19 | Morphic storage device |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2017228287A JP2017228287A (ja) | 2017-12-28 |
| JP2017228287A5 JP2017228287A5 (enExample) | 2020-07-02 |
| JP6847764B2 true JP6847764B2 (ja) | 2021-03-24 |
Family
ID=60659470
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2017099640A Active JP6847764B2 (ja) | 2016-06-20 | 2017-05-19 | フラッシュメモリの割当方法及びそれを用いたソリッドステートドライブ |
Country Status (5)
| Country | Link |
|---|---|
| US (2) | US10055159B2 (enExample) |
| JP (1) | JP6847764B2 (enExample) |
| KR (2) | KR102477581B1 (enExample) |
| CN (1) | CN107526543B (enExample) |
| TW (2) | TWI699647B (enExample) |
Families Citing this family (44)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11614893B2 (en) | 2010-09-15 | 2023-03-28 | Pure Storage, Inc. | Optimizing storage device access based on latency |
| US12008266B2 (en) | 2010-09-15 | 2024-06-11 | Pure Storage, Inc. | Efficient read by reconstruction |
| US10275165B2 (en) * | 2016-09-12 | 2019-04-30 | Toshiba Memory Corporation | Memory controller |
| US12039165B2 (en) | 2016-10-04 | 2024-07-16 | Pure Storage, Inc. | Utilizing allocation shares to improve parallelism in a zoned drive storage system |
| US10756816B1 (en) | 2016-10-04 | 2020-08-25 | Pure Storage, Inc. | Optimized fibre channel and non-volatile memory express access |
| US11947814B2 (en) | 2017-06-11 | 2024-04-02 | Pure Storage, Inc. | Optimizing resiliency group formation stability |
| US11520514B2 (en) | 2018-09-06 | 2022-12-06 | Pure Storage, Inc. | Optimized relocation of data based on data characteristics |
| US12032848B2 (en) | 2021-06-21 | 2024-07-09 | Pure Storage, Inc. | Intelligent block allocation in a heterogeneous storage system |
| US10860475B1 (en) | 2017-11-17 | 2020-12-08 | Pure Storage, Inc. | Hybrid flash translation layer |
| US10949113B2 (en) * | 2018-01-10 | 2021-03-16 | SK Hynix Inc. | Retention aware block mapping in flash-based solid state drives |
| US11132133B2 (en) | 2018-03-08 | 2021-09-28 | Toshiba Memory Corporation | Workload-adaptive overprovisioning in solid state storage drive arrays |
| US12175124B2 (en) | 2018-04-25 | 2024-12-24 | Pure Storage, Inc. | Enhanced data access using composite data views |
| US12001688B2 (en) | 2019-04-29 | 2024-06-04 | Pure Storage, Inc. | Utilizing data views to optimize secure data access in a storage system |
| US10656847B2 (en) | 2018-05-10 | 2020-05-19 | International Business Machines Corporation | Mitigating asymmetric transient errors in non-volatile memory by proactive data relocation |
| CN108845765B (zh) * | 2018-05-31 | 2021-06-29 | 郑州云海信息技术有限公司 | 一种nand数据读取方法、系统、设备及存储介质 |
| US11500570B2 (en) | 2018-09-06 | 2022-11-15 | Pure Storage, Inc. | Efficient relocation of data utilizing different programming modes |
| US11163452B2 (en) * | 2018-09-24 | 2021-11-02 | Elastic Flash Inc. | Workload based device access |
| JP7178916B2 (ja) | 2019-01-29 | 2022-11-28 | キオクシア株式会社 | メモリシステムおよび制御方法 |
| JP2020149123A (ja) * | 2019-03-11 | 2020-09-17 | キオクシア株式会社 | メモリシステム、及びメモリシステムの制御方法 |
| US11086705B2 (en) * | 2019-03-18 | 2021-08-10 | International Business Machines Corporation | Managing the reliability of pages in non-volatile random access memory |
| US11288007B2 (en) * | 2019-05-16 | 2022-03-29 | Western Digital Technologies, Inc. | Virtual physical erase of a memory of a data storage device |
| KR102680521B1 (ko) * | 2019-06-18 | 2024-07-04 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 그 동작 방법 |
| US11714572B2 (en) | 2019-06-19 | 2023-08-01 | Pure Storage, Inc. | Optimized data resiliency in a modular storage system |
| US12001684B2 (en) | 2019-12-12 | 2024-06-04 | Pure Storage, Inc. | Optimizing dynamic power loss protection adjustment in a storage system |
| KR102880561B1 (ko) | 2020-01-07 | 2025-11-05 | 에스케이하이닉스 주식회사 | 이전에 발생한 에러 분석을 통해 에러대응동작을 선택하기 위한 메모리 시스템 및 메모리 시스템을 포함하는 데이터 처리 시스템 |
| JP7584984B2 (ja) * | 2020-03-18 | 2024-11-18 | キオクシア株式会社 | メモリシステム |
| US11507297B2 (en) | 2020-04-15 | 2022-11-22 | Pure Storage, Inc. | Efficient management of optimal read levels for flash storage systems |
| US11474986B2 (en) | 2020-04-24 | 2022-10-18 | Pure Storage, Inc. | Utilizing machine learning to streamline telemetry processing of storage media |
| US11416338B2 (en) | 2020-04-24 | 2022-08-16 | Pure Storage, Inc. | Resiliency scheme to enhance storage performance |
| US11768763B2 (en) | 2020-07-08 | 2023-09-26 | Pure Storage, Inc. | Flash secure erase |
| KR20220021167A (ko) * | 2020-08-13 | 2022-02-22 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
| US11354190B2 (en) * | 2020-08-13 | 2022-06-07 | Western Digital Technologies, Inc. | Using over provisioning space for selectively storing block parity |
| US11513974B2 (en) | 2020-09-08 | 2022-11-29 | Pure Storage, Inc. | Using nonce to control erasure of data blocks of a multi-controller storage system |
| US11681448B2 (en) | 2020-09-08 | 2023-06-20 | Pure Storage, Inc. | Multiple device IDs in a multi-fabric module storage system |
| US12153818B2 (en) | 2020-09-24 | 2024-11-26 | Pure Storage, Inc. | Bucket versioning snapshots |
| US11487455B2 (en) | 2020-12-17 | 2022-11-01 | Pure Storage, Inc. | Dynamic block allocation to optimize storage system performance |
| US11630593B2 (en) | 2021-03-12 | 2023-04-18 | Pure Storage, Inc. | Inline flash memory qualification in a storage system |
| US12099742B2 (en) | 2021-03-15 | 2024-09-24 | Pure Storage, Inc. | Utilizing programming page size granularity to optimize data segment storage in a storage system |
| US12189977B2 (en) | 2021-05-12 | 2025-01-07 | Samsung Electronics Co., Ltd. | System and method for fine granular retention control in storage devices |
| US11832410B2 (en) | 2021-09-14 | 2023-11-28 | Pure Storage, Inc. | Mechanical energy absorbing bracket apparatus |
| US11994723B2 (en) | 2021-12-30 | 2024-05-28 | Pure Storage, Inc. | Ribbon cable alignment apparatus |
| CN116469442B (zh) * | 2022-03-23 | 2024-05-03 | 武汉置富半导体技术有限公司 | 芯片数据保持时间的预测方法、装置及存储介质 |
| US12099410B2 (en) * | 2022-12-01 | 2024-09-24 | Solid State Storage Technology Corporation | Statistics table of solid state storage device and using method thereof |
| CN116400859B (zh) * | 2023-03-30 | 2025-09-19 | 山东华芯半导体有限公司 | 一种ssd主控内解决浅擦除的方法及ssd单元 |
Family Cites Families (30)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE4140018A1 (de) * | 1991-12-04 | 1993-06-09 | Bts Broadcast Television Systems Gmbh, 6100 Darmstadt, De | Verfahren und schaltungsanordnung zum decodieren von rs-codierten datensignalen |
| US7903806B1 (en) * | 2000-01-05 | 2011-03-08 | Canoga Perkins Corp. | Expert call analyzer and next generation telephony network configuration system |
| US20050081080A1 (en) * | 2003-10-14 | 2005-04-14 | International Business Machines Corporation | Error recovery for data processing systems transferring message packets through communications adapters |
| US7593259B2 (en) * | 2006-09-13 | 2009-09-22 | Mosaid Technologies Incorporated | Flash multi-level threshold distribution scheme |
| JP2008287404A (ja) * | 2007-05-16 | 2008-11-27 | Hitachi Ltd | 読み出しによる非アクセスメモリセルのデータ破壊を検出及び回復する装置、及びその方法 |
| JP2009163782A (ja) * | 2007-12-13 | 2009-07-23 | Toshiba Corp | 半導体記憶装置 |
| JP2009251627A (ja) * | 2008-04-01 | 2009-10-29 | Panasonic Corp | メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶システム |
| KR20110036816A (ko) * | 2008-06-24 | 2011-04-11 | 샌디스크 아이엘 엘티디 | 고체 상태 메모리의 소거 횟수에 따라 에러를 정정하기 위한 방법과 장치 |
| US8464143B2 (en) | 2009-01-12 | 2013-06-11 | Board Of Regents Of The Nevada System Of Higher Education | Error detection method |
| US8433985B2 (en) | 2010-03-29 | 2013-04-30 | Intel Corporation | Error correction mechanisms for flash memories |
| US8489855B2 (en) | 2010-05-07 | 2013-07-16 | Ocz Technology Group Inc. | NAND flash-based solid state drive and method of operation |
| US9170933B2 (en) | 2010-06-28 | 2015-10-27 | International Business Machines Corporation | Wear-level of cells/pages/sub-pages/blocks of a memory |
| CN103329103B (zh) * | 2010-10-27 | 2017-04-05 | 希捷科技有限公司 | 使用用于基于闪存的数据存储的自适应ecc技术的方法和设备 |
| JP2013047913A (ja) * | 2011-08-29 | 2013-03-07 | Toshiba Corp | 情報処理装置、情報処理装置の制御方法、制御ツール、及びホスト装置 |
| WO2013065334A1 (ja) * | 2011-11-02 | 2013-05-10 | 国立大学法人東京大学 | メモリコントローラおよびデータ記憶装置 |
| US8862967B2 (en) * | 2012-03-15 | 2014-10-14 | Sandisk Technologies Inc. | Statistical distribution based variable-bit error correction coding |
| US9251019B2 (en) | 2012-05-29 | 2016-02-02 | SanDisk Technologies, Inc. | Apparatus, system and method for managing solid-state retirement |
| US20130346812A1 (en) * | 2012-06-22 | 2013-12-26 | Micron Technology, Inc. | Wear leveling memory using error rate |
| US8862810B2 (en) | 2012-09-27 | 2014-10-14 | Arkologic Limited | Solid state device write operation management system |
| JP5528525B2 (ja) * | 2012-11-19 | 2014-06-25 | 京セラ株式会社 | 携帯情報端末 |
| US9652376B2 (en) | 2013-01-28 | 2017-05-16 | Radian Memory Systems, Inc. | Cooperative flash memory control |
| US9007842B2 (en) * | 2013-03-12 | 2015-04-14 | Seagate Technology Llc | Retention detection and/or channel tracking policy in a flash memory based storage system |
| US9122589B1 (en) | 2013-06-28 | 2015-09-01 | Emc Corporation | Data storage system with unified system cache |
| US9195401B2 (en) | 2014-02-18 | 2015-11-24 | University Of Florida Research Foundation, Inc. | Method and apparatus for virtual machine live storage migration in heterogeneous storage environment |
| JP6174502B2 (ja) * | 2014-02-21 | 2017-08-02 | 株式会社ゼンリン | 経路探索装置、経路探索方法、コンピュータプログラム、および、データ構造 |
| US9419655B2 (en) * | 2014-04-04 | 2016-08-16 | Seagate Technology Llc | Error correction code (ECC) selection using probability density functions of error correction capability in storage controllers with multiple error correction codes |
| WO2015155860A1 (ja) * | 2014-04-09 | 2015-10-15 | 株式会社日立製作所 | 情報記憶装置及び情報記憶装置の制御方法 |
| US9916237B2 (en) * | 2014-12-12 | 2018-03-13 | Sandisk Technologies Llc | Model based configuration parameter management |
| US9658800B2 (en) * | 2014-12-22 | 2017-05-23 | Sandisk Technologies Llc | End of life prediction based on memory wear |
| US20170160338A1 (en) | 2015-12-07 | 2017-06-08 | Intel Corporation | Integrated circuit reliability assessment apparatus and method |
-
2016
- 2016-08-19 US US15/242,433 patent/US10055159B2/en active Active
-
2017
- 2017-02-10 KR KR1020170018819A patent/KR102477581B1/ko active Active
- 2017-04-18 TW TW106112839A patent/TWI699647B/zh active
- 2017-04-18 TW TW109121230A patent/TWI708143B/zh active
- 2017-05-19 JP JP2017099640A patent/JP6847764B2/ja active Active
- 2017-06-16 CN CN201710455905.1A patent/CN107526543B/zh active Active
-
2018
- 2018-07-25 US US16/045,639 patent/US10489075B2/en active Active
-
2022
- 2022-12-09 KR KR1020220171596A patent/KR102546244B1/ko active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2017228287A (ja) | 2017-12-28 |
| KR20230004358A (ko) | 2023-01-06 |
| US20190018604A1 (en) | 2019-01-17 |
| KR102546244B1 (ko) | 2023-06-22 |
| KR102477581B1 (ko) | 2022-12-14 |
| US10055159B2 (en) | 2018-08-21 |
| KR20170142841A (ko) | 2017-12-28 |
| CN107526543A (zh) | 2017-12-29 |
| TW202040366A (zh) | 2020-11-01 |
| TW201800945A (zh) | 2018-01-01 |
| US20170364298A1 (en) | 2017-12-21 |
| TWI708143B (zh) | 2020-10-21 |
| US10489075B2 (en) | 2019-11-26 |
| CN107526543B (zh) | 2022-02-01 |
| TWI699647B (zh) | 2020-07-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6847764B2 (ja) | フラッシュメモリの割当方法及びそれを用いたソリッドステートドライブ | |
| US10209902B1 (en) | Method and apparatus for selecting a memory block for writing data, based on a predicted frequency of updating the data | |
| US10956317B2 (en) | Garbage collection in non-volatile memory that fully programs dependent layers in a target block | |
| US9507711B1 (en) | Hierarchical FTL mapping optimized for workload | |
| US10126970B2 (en) | Paired metablocks in non-volatile storage device | |
| US9141475B2 (en) | Methods for tag-grouping of blocks in storage devices | |
| US8560770B2 (en) | Non-volatile write cache for a data storage system | |
| KR102419541B1 (ko) | 동적 캐시 관리 기능이 있는 메모리 디바이스 | |
| US9864545B2 (en) | Open erase block read automation | |
| US20170242625A1 (en) | Apparatus for ssd performance and endurance improvement | |
| JP5480913B2 (ja) | 記憶装置、およびメモリコントローラ | |
| US10552063B2 (en) | Background mitigation reads in a non-volatile memory system | |
| US20140129758A1 (en) | Wear leveling in flash memory devices with trim commands | |
| US10957411B2 (en) | Apparatus and method for managing valid data in memory system | |
| JP2023500617A (ja) | 不揮発性ランダム・アクセス・メモリにおける補正読取り電圧オフセットの更新 | |
| US10489076B2 (en) | Morphic storage device | |
| US10628301B1 (en) | System and method for optimizing write amplification of non-volatile memory storage media | |
| US10942662B2 (en) | Relocating and/or re-programming blocks of storage space based on calibration frequency and resource utilization |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200513 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200513 |
|
| A871 | Explanation of circumstances concerning accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A871 Effective date: 20200513 |
|
| A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20200527 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200915 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20200916 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20201211 |
|
| 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: 20210202 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20210303 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6847764 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 |