KR102276350B1 - Nand 버퍼를 갖는 nand 플래시 저장 디바이스 - Google Patents
Nand 버퍼를 갖는 nand 플래시 저장 디바이스 Download PDFInfo
- Publication number
- KR102276350B1 KR102276350B1 KR1020197035081A KR20197035081A KR102276350B1 KR 102276350 B1 KR102276350 B1 KR 102276350B1 KR 1020197035081 A KR1020197035081 A KR 1020197035081A KR 20197035081 A KR20197035081 A KR 20197035081A KR 102276350 B1 KR102276350 B1 KR 102276350B1
- Authority
- KR
- South Korea
- Prior art keywords
- chip
- nand flash
- write
- future
- data
- Prior art date
Links
Images
Classifications
-
- 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/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- 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/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- 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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0804—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
-
- 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/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- 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/0629—Configuration or reconfiguration of storage systems
- G06F3/0635—Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
-
- 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/0652—Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
-
- 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/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; 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
- 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; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/21—Employing a record carrier using a specific recording technology
- G06F2212/214—Solid state disk
-
- 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/22—Employing cache memory using specific memory technology
- G06F2212/222—Non-volatile 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/7203—Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
-
- 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/7205—Cleaning, compaction, garbage collection, erase control
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)
- Computer Networks & Wireless Communication (AREA)
- Memory System (AREA)
- Read Only Memory (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201762524016P | 2017-06-23 | 2017-06-23 | |
US62/524,016 | 2017-06-23 | ||
US15/816,447 | 2017-11-17 | ||
US15/816,447 US10606484B2 (en) | 2017-06-23 | 2017-11-17 | NAND flash storage device with NAND buffer |
PCT/US2018/022683 WO2018236440A1 (en) | 2017-06-23 | 2018-03-15 | NAND FLASH STORAGE DEVICE WITH NAND BUFFER |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200003055A KR20200003055A (ko) | 2020-01-08 |
KR102276350B1 true KR102276350B1 (ko) | 2021-07-12 |
Family
ID=61899381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020197035081A KR102276350B1 (ko) | 2017-06-23 | 2018-03-15 | Nand 버퍼를 갖는 nand 플래시 저장 디바이스 |
Country Status (9)
Country | Link |
---|---|
US (1) | US10606484B2 (ja) |
EP (1) | EP3418897B1 (ja) |
JP (1) | JP7234144B2 (ja) |
KR (1) | KR102276350B1 (ja) |
CN (1) | CN109117085B (ja) |
DE (2) | DE102018109929A1 (ja) |
GB (1) | GB2563713B (ja) |
TW (1) | TWI727160B (ja) |
WO (1) | WO2018236440A1 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10481834B2 (en) * | 2018-01-24 | 2019-11-19 | Samsung Electronics Co., Ltd. | Erasure code data protection across multiple NVME over fabrics storage devices |
US11048430B2 (en) * | 2019-04-12 | 2021-06-29 | Netapp, Inc. | Object store mirroring where during resync of two storage bucket, objects are transmitted to each of the two storage bucket |
KR20200142219A (ko) | 2019-06-12 | 2020-12-22 | 삼성전자주식회사 | 전자 장치 및 그의 저장 공간 이용 방법 |
JP2021043908A (ja) * | 2019-09-13 | 2021-03-18 | キオクシア株式会社 | メモリシステムおよび制御方法 |
US11269779B2 (en) | 2020-05-27 | 2022-03-08 | Microsoft Technology Licensing, Llc | Memory system with a predictable read latency from media with a long write latency |
CN118093449A (zh) * | 2022-11-25 | 2024-05-28 | 长江存储科技有限责任公司 | 一种存储器系统及其垃圾回收方法、电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010071655A1 (en) * | 2008-12-19 | 2010-06-24 | Hewlett-Packard Development Company, L.P. | Redundant data storage for uniform read latency |
US20110145475A1 (en) | 2009-12-15 | 2011-06-16 | International Business Machines Corporation | Reducing access contention in flash-based memory systems |
WO2013048451A1 (en) | 2011-09-30 | 2013-04-04 | Intel Corporation | Presentation of direct accessed storage under a logical drive model |
JP2013109404A (ja) | 2011-11-17 | 2013-06-06 | Toshiba Corp | 情報処理装置 |
US20160179422A1 (en) | 2014-12-19 | 2016-06-23 | Samsung Electronics Co., Ltd. | Method of performing garbage collection and raid storage system adopting the same |
US20170131908A1 (en) * | 2015-11-09 | 2017-05-11 | Google Inc. | Memory Devices and Methods |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
US8566507B2 (en) * | 2009-04-08 | 2013-10-22 | Google Inc. | Data storage device capable of recognizing and controlling multiple types of memory chips |
CN106021147B (zh) * | 2011-09-30 | 2020-04-28 | 英特尔公司 | 在逻辑驱动器模型下呈现直接存取的存储设备 |
US8301832B1 (en) | 2012-03-23 | 2012-10-30 | DSSD, Inc. | Storage system with guaranteed read latency |
KR102039537B1 (ko) * | 2013-03-15 | 2019-11-01 | 삼성전자주식회사 | 불휘발성 저장 장치 및 그것의 운영체제 이미지 프로그램 방법 |
US20140304452A1 (en) | 2013-04-03 | 2014-10-09 | Violin Memory Inc. | Method for increasing storage media performance |
US9213634B2 (en) * | 2013-11-22 | 2015-12-15 | Apple Inc. | Efficient reuse of segments in nonoverwrite storage systems |
US9632729B2 (en) * | 2014-05-07 | 2017-04-25 | Seagate Technology Llc | Storage compute device with tiered memory processing |
US10031670B2 (en) * | 2015-09-04 | 2018-07-24 | Toshiba Memory Corporation | Control unit and control method for controlling writes and background operations of multiple semiconductor storage devices |
US10318175B2 (en) * | 2017-03-07 | 2019-06-11 | Samsung Electronics Co., Ltd. | SSD with heterogeneous NVM types |
-
2017
- 2017-11-17 US US15/816,447 patent/US10606484B2/en active Active
-
2018
- 2018-03-15 WO PCT/US2018/022683 patent/WO2018236440A1/en active Application Filing
- 2018-03-15 JP JP2019566261A patent/JP7234144B2/ja active Active
- 2018-03-15 KR KR1020197035081A patent/KR102276350B1/ko active IP Right Grant
- 2018-03-23 GB GB1804693.8A patent/GB2563713B/en active Active
- 2018-04-03 TW TW107111866A patent/TWI727160B/zh active
- 2018-04-25 DE DE102018109929.0A patent/DE102018109929A1/de active Pending
- 2018-04-25 EP EP18169162.7A patent/EP3418897B1/en active Active
- 2018-04-25 DE DE202018102304.7U patent/DE202018102304U1/de active Active
- 2018-04-27 CN CN201810391996.1A patent/CN109117085B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2010071655A1 (en) * | 2008-12-19 | 2010-06-24 | Hewlett-Packard Development Company, L.P. | Redundant data storage for uniform read latency |
US20110145475A1 (en) | 2009-12-15 | 2011-06-16 | International Business Machines Corporation | Reducing access contention in flash-based memory systems |
WO2013048451A1 (en) | 2011-09-30 | 2013-04-04 | Intel Corporation | Presentation of direct accessed storage under a logical drive model |
JP2013109404A (ja) | 2011-11-17 | 2013-06-06 | Toshiba Corp | 情報処理装置 |
US20160179422A1 (en) | 2014-12-19 | 2016-06-23 | Samsung Electronics Co., Ltd. | Method of performing garbage collection and raid storage system adopting the same |
US20170131908A1 (en) * | 2015-11-09 | 2017-05-11 | Google Inc. | Memory Devices and Methods |
Also Published As
Publication number | Publication date |
---|---|
GB2563713A (en) | 2018-12-26 |
CN109117085B (zh) | 2021-08-20 |
TWI727160B (zh) | 2021-05-11 |
GB2563713B (en) | 2020-01-15 |
US20180373440A1 (en) | 2018-12-27 |
JP7234144B2 (ja) | 2023-03-07 |
DE202018102304U1 (de) | 2018-10-30 |
DE102018109929A1 (de) | 2018-12-27 |
US10606484B2 (en) | 2020-03-31 |
WO2018236440A1 (en) | 2018-12-27 |
EP3418897B1 (en) | 2022-09-14 |
TW201905921A (zh) | 2019-02-01 |
KR20200003055A (ko) | 2020-01-08 |
JP2020524839A (ja) | 2020-08-20 |
GB201804693D0 (en) | 2018-05-09 |
CN109117085A (zh) | 2019-01-01 |
EP3418897A1 (en) | 2018-12-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102276350B1 (ko) | Nand 버퍼를 갖는 nand 플래시 저장 디바이스 | |
US11416391B2 (en) | Garbage collection | |
US11586357B2 (en) | Memory management | |
US11487666B2 (en) | Timed data transfer between a host system and a memory sub-system | |
CN107092561B (zh) | 具有直接存取的多级存储器 | |
WO2016107442A1 (zh) | 将数据写入固态硬盘的方法及固态硬盘 | |
US12050809B2 (en) | Multi-pass data programming in a memory sub-system having multiple dies and planes | |
US11294820B2 (en) | Management of programming mode transitions to accommodate a constant size of data transfer between a host system and a memory sub-system | |
US20170228191A1 (en) | Systems and methods for suppressing latency in non-volatile solid state devices | |
US20220113905A1 (en) | Command Prioritization to Reduce Latencies of Zone Commands | |
JP2011070365A (ja) | メモリシステム | |
US11281405B2 (en) | Controlled die asymmetry during MLC operations for optimal system pipeline | |
US11507289B2 (en) | Storage device, controller and method for operating storage device | |
JP2024513234A (ja) | ソリッドステートドライブ内のnandダイの衝突を軽減する方法及び装置 | |
US11481136B1 (en) | Very low sized zone support for storage devices | |
TWI724550B (zh) | 資料儲存裝置以及非揮發式記憶體控制方法 | |
US20150254011A1 (en) | Memory system, memory controller and control method of non-volatile memory | |
CN110888591A (zh) | 数据储存装置以及非挥发式存储器控制方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |