CN111258494B - 数据存储装置及操作方法、具有数据存储装置的存储系统 - Google Patents
数据存储装置及操作方法、具有数据存储装置的存储系统 Download PDFInfo
- Publication number
- CN111258494B CN111258494B CN201910812646.2A CN201910812646A CN111258494B CN 111258494 B CN111258494 B CN 111258494B CN 201910812646 A CN201910812646 A CN 201910812646A CN 111258494 B CN111258494 B CN 111258494B
- Authority
- CN
- China
- Prior art keywords
- data
- memory
- block data
- type block
- type
- 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
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/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; 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/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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- 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/0604—Improving or facilitating administration, e.g. storage 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/0629—Configuration or reconfiguration of storage 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/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- 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
- 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/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/0673—Single storage device
- G06F3/068—Hybrid storage device
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5628—Programming or writing circuits; Data input circuits
-
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2211/00—Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C2211/56—Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
- G11C2211/564—Miscellaneous aspects
- G11C2211/5642—Multilevel memory with buffers, latches, registers at input or output
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2211/00—Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C2211/56—Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
- G11C2211/564—Miscellaneous aspects
- G11C2211/5643—Multilevel memory comprising cache storage devices
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 Hardware Design (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
本文描述了数据存储装置及操作方法、具有数据存储装置的存储系统。该数据存储装置包括:存储部,包括第一存储器区域和第二存储器区域;缓冲器存储器,临时存储要从主机存储在存储部中的数据;控制器,控制要存储在存储部中的数据。该控制器包括:预写入部件,将第一块数据从缓冲器存储器写入第一存储器区域中,第一块数据由一组多个单位数据配置并且是第一类型块数据中的至少一个;组合单元,在作为新的第一类型块数据的第二块数据被引入到缓冲器存储器中时,通过组合构成第一块数据的多个单位数据中的至少一个和构成第二块数据的多个单位数据中的至少一个来生成至少一个第二类型块数据;主写入部件,在第二存储器区域中写入第二类型块数据。
Description
相关申请的交叉引用
本申请要求于2018年12月3日在韩国知识产权局提交的韩国申请号10-2018-0153901的优先权,该申请通过引用整体并入本文。
技术领域
各种实施例一般地涉及半导体集成装置,并且更具体地涉及数据存储装置、其操作方法和具有该数据存储装置的存储系统。
背景技术
存储装置可以耦合到主机装置,并且根据主机装置的请求执行数据输入/输出操作。存储装置可以使用各种存储介质来存储数据。特别地,为了提供基于高质量多媒体数据的各种功能,便携式信息设备中大容量存储介质的使用已经增加。
采用闪存的存储介质具有大容量、非易失性、低成本、低功耗、高数据处理率等优点。因此,对这种存储介质的需求已增加。
闪存可以利用替换硬盘驱动器(HDD)的固态驱动器(SDD)类型、用作内置存储器的嵌入式类型、移动类型等来实现,并且闪存可以应用于各种电子设备。
随着电子设备的发展,存储介质需要具有更高的容量、更高的集成度、更小的尺寸、更高的性能和更高的速度。具体地,用于处理大容量数据的存储介质中的数据处理速率可以充当影响存储介质的性能的主要因素。
发明内容
在本公开的实施例中,一种数据存储装置可以包括:存储部,包括第一存储器区域和第二存储器区域;缓冲器存储器,被配置为临时存储要存储在所述存储部中的数据;以及控制器,被配置为控制要存储在所述存储部中的所述数据,其中所述控制器包括:预写入部件,被配置为将由多个单位数据配置的第一类型块数据从所述缓冲器存储器写入所述第一存储器区域中;组合部件,被配置为通过组合构成所述第一类型块数据的第一段的至少一个单位数据和构成所述第一类型块数据的第二段的至少一个单位数据来生成第二类型块数据的至少一段,其中所述第一类型块数据的第二段在所述第一类型块数据的第一段之后被引入所述缓冲器存储器;以及主写入部件,被配置为将所述第二类型块数据的所述至少一段写入所述第二存储器区域中。
在本公开的实施例中,一种数据存储装置可以包括:存储部,包括非易失性缓冲器和非易失性用户数据存储区域;易失性缓冲器,被配置为临时存储要存储在所述存储部中的数据;以及控制器,被配置为通过组合临时存储在所述非易失性缓冲器中的第一类型块数据的单位数据和临时存储在所述易失性缓冲器中的第一类型块数据的单位数据来生成第二类型块数据,并且将所述第二类型块数据存储在所述非易失性用户数据存储区域中。
在本公开的另一实施例中,一种数据存储装置的操作方法,所述存储装置包括:存储部,包括第一存储器区域和第二存储器区域;缓冲器存储器;以及控制器,被配置为控制要存储在所述存储部中的数据,所述方法包括:通过所述控制器将由多个单位数据配置的第一类型块数据从所述缓冲器存储器写入所述第一存储器区域中;通过所述控制器来组合构成所述第一类型块数据的第一段的至少一个单位数据和构成所述第一类型块数据的第二段的至少一个单位数据来生成第二类型块数据的至少一段,其中所述第一类型块数据的第二段在所述第一类型块数据的第一段之后被引入所述缓冲器存储器;以及通过所述控制器将所述第二类型块数据的至少一段写入所述第二存储器区域中。
在本公开的实施例中,一种数据存储装置可以包括:包括多个管芯的存储器装置,每个管芯包括较低存储容量单元的第一存储器区域和较高存储容量单元的第二存储器区域;以及控制器,其缓冲单位数据同时控制所述存储器装置以分布式方式将至少一个第一段临时存储在所述第一存储器区域中,每个第一段包括多个单位数据;以及控制所述存储器装置执行根据条带写入方案以分布式方式将第二段存储在所述第二存储器区域中的一次编程操作,每个第二段包括多个单位数据;其中所述存储器装置将每个临时存储的第一段的单位数据与当前第一段的单位数据组合以形成每个第二段,并且其中所述第一段之一的单位数据的数目与所述管芯的数目相同。
以下描述这些和其他特征、方面和实施例。
附图说明
从以下结合附图的详细描述中将更清楚地理解本公开主题的方面、特征和优点,在附图中:
图1是示出根据本公开实施例的数据存储装置的配置的图;
图2是示出根据本公开实施例的控制器的配置的图;
图3是示出根据本公开实施例的写入控制部件的配置的图;
图4至图9是示出根据本公开实施例的数据存储装置的写入方法的图;
图10是示出根据本公开实施例的数据存储装置的读取方法的图;
图11是示出根据本公开实施例的数据存储系统的图;
图12和图13是示出根据本公开实施例的数据处理系统的图;
图14是示出根据本公开实施例的包括数据存储装置的网络系统的图;
图15是示出根据本公开实施例的数据存储装置中包括的非易失性存储器装置的框图。
具体实施方式
将参考附图更详细地描述本发明的各种实施例。附图是各种实施例的示意图和框图,包括元件和中间结构。因此,附图不旨在传达实际尺寸或形状。在某些情况下,可能会夸大尺寸以更清楚地显示某些特征。
应当理解,尽管这里可以使用术语“第一”、“第二”、“第三”等来描述各种元件,但是这些元件不受这些术语的限制。这些术语用于将一个元件与另一个元件区分开。因此,在不脱离本发明的精神和范围的情况下,下面描述的第一元件也可以被称为第二元件或第三元件。
将进一步理解的是,当元件被称为“连接到”或“耦合到”另一元件时,它可以直接在另一元件上、连接到或耦合到另一元件,或者可以存在一个或多个中间元件。另外,还应理解,当元件被称为在两个元件“之间”时,它可以是两个元件之间的唯一元件,或者也可以存在一个或多个中间元件。无论是直接还是间接连接/耦合,两个元件之间的通信可以是有线的或无线的,除非另有说明或上下文另有说明。
如本文所用,除非上下文另有明确说明,否则单数形式也可包括复数形式,反之亦然。本申请和所附权利要求中使用的冠词“一”和“一个”通常应被解释为表示“一个或多个”,除非另有说明或从上下文清楚地指向单数形式。
将进一步理解,当在本说明书中使用时,术语“包括”、“包括……的”、“包含”和“包含……的”指定所述元件的存在并且不排除存在或添加一个或多个其他元件。如本文所使用,术语“和/或”包括一个或多个相关所列项目的任何和所有组合。
更一般地,提供所公开的实施例是为了使本领域技术人员能够实践本发明,而不是限制本发明的范围。根据本公开,本领域技术人员将理解,可以对任何公开的实施例进行各种修改。本发明包括所有这些修改,只要它们落入权利要求及其等同物的范围内。此外,在整个说明书中,对“实施例”、“另一实施例”等的引用不一定仅针对一个实施例,并且对任何这样的短语的不同引用不一定是相同的实施例。
图1是示出根据实施例的数据存储装置的配置的图。
参考图1,数据存储装置10可以包括控制器110、存储部120和缓冲器存储器130。虽然图1示出了在控制器110外部提供的缓冲器存储器,但是根据实施例,缓冲器存储器130也可以设置在控制器110内。
控制器110可以响应于主机装置(未示出)的请求而控制存储部120。例如,控制器110可以根据主机装置的编程(写入)请求来控制要在存储部120中编程的数据。此外,控制器110可以响应于主机装置的读取请求而将存储在存储部120中的数据提供给主机装置。
存储部120可以根据控制器110的控制来编程数据或输出编程的数据。存储部120可以被配置作为易失性存储器装置或非易失性存储器装置。在一个实施例中,存储部120可以使用各种易失性存储器装置中的任何一种来实现,诸如静态随机存取存储器(SRAM)和/或动态随机存取存储器(DRAM)。在一个实施例中,存储部120可以使用各种非易失性存储器装置中的任何一种来实现,诸如电可擦除可编程只读存储器(EEPROM)、NAND闪存、NOR闪存、相变随机存取存储器(PRAM)、电阻RAM(ReRAM)、铁电RAM(FRAM)和自旋扭矩传递磁RAM(STT-RAM)。存储部120可以包括多个管芯、多个芯片或多个封装。此外,存储部120的每个存储器单元可以被配置作为存储单个数据位的单级单元(SLC)或者存储多个数据位的多级单元(MLC)。
在一个实施例中,存储部120可以分为第一存储器区域121和第二存储器区域123。存储部120可以包括页缓冲器125,其是耦合到存储部120的存储器单元的寄存器或锁存器,并且用于在存储器单元和外部装置之间交换数据。
当数据存储装置10与主机装置一起执行写入或读取数据的一系列操作时,缓冲器存储器130可以用作临时存储数据的空间。缓冲器存储器130可以被配置作为易失性存储器或非易失性存储器。在一个实施例中,缓冲器存储器130可以包括静态随机存取存储器(SRAM)和/或动态随机存取存储器(DRAM),但是本发明不限于此。虽然图1示出了缓冲器存储器130布置在控制器110的外部,但在另一实施例中,缓冲器存储器130可以布置在控制器110内并且通过缓冲器管理器(例如,图2的缓冲器管理器117)来管理。
由于安装在诸如智能电话的移动电子装置上的数据存储装置的物理存储空间的限制,缓冲器存储器130的存储容量可能受到限制。因此,需要通过克服缓冲器存储器130的有限容量来改善写入和读取性能。
控制器110可以包括写入控制部件120,其可以被配置为响应于主机命令而对存储部120执行写入操作。
在写入控制部件20的写入操作中发送和接收的数据可以被如下定义。
[表格1]
在一个实施例中,写入控制部件20可以响应于主机装置的写入请求而将第一类型块数据临时存储在缓冲器存储器130中,该第一类型块数据是一组多个单位数据。在一个实施例中,单位数据可以具有与第一存储器区域121的一个页相同的尺寸。第一类型块数据可以被设置使得第一类型块数据内的单位数据的数目与包括在存储部120中的管芯的数目相同。
写入控制部件20可以将临时存储在缓冲器存储器130中的第一类型块数据中的至少一个写入第一存储器区域121中。然后,当新的第一类型块数据被引入缓冲器存储器130时,写入控制部件20可以通过组合存储在第一存储器区域121中的当前第一类型块数据的至少一个单位数据和新的第一类型块数据的至少一个单位数据来生成至少一个第二类型块数据。生成的第二类型块数据可以写入第二存储器区域123中。
在一个实施例中,第二类型块数据可以是要在第二存储器区域123中同时写入的数据的单位。例如,当第二存储器区域123中的存储器单元存储3位数据时,可以通过三个单位数据的组合来生成该第二类型块数据。
因此,缓冲器存储器130可以作为易失性缓冲器操作,其中临时存储要存储在存储部120中的数据。第一存储器区域121可以用作临时存储要存储在第二存储器区域123中的数据的空间,例如,非易失性缓冲器。写入控制部件20可以被配置为通过组合临时存储在非易失性缓冲器中的单位数据和临时存储在易失性缓冲器中的单位数据来生成第二类型块数据,并且将所生成的第二类型块数据存储在非易失性存储器区域中。
“条带化”可以指用于在物理存储空间中分配逻辑存储空间的数据的一种技术。例如,逻辑存储空间的数据可以被分组,并且被写入物理存储空间的位置并且从物理存储空间的位置被读取,该物理存储空间通过条带化来被物理划分。条带化可以允许以高性能读取/写入大的顺序文件,并且还可以支持随机访问方法。
为了使用条带化方法执行写入操作,数据必须以条带写入单位来被分组。因此,可以首先将从主机装置提供的数据保持在诸如缓冲器存储器130的特定临时存储空间中,然后当足以形成第二类型块数据的数据被收集时,可以执行条带写入操作。
在资源受限的系统中,可以限制临时存储空间,其中数据在条带化之前被保持为被分组。因此,除了缓冲器存储器130之外,存储部120的一部分(例如,第一存储器区域121)可以用作附加缓冲器空间以保持用于形成第二类型块数据的数据。
在一个实施例中,构成第一存储器区域121的单位存储器单元可以被配置为存储1位数据,并且可以用作具有高速操作的临时存储空间。
由于当难以将用于条带化的数据充分存储在缓冲器存储器130中时,存储部120的该部分可以用作附加缓冲器空间,即使在资源受限的系统环境中,诸如在移动电子装置中,也可以应用条带化方法。
图2是根据实施例的控制器(例如,控制器110)的配置图。
参考图2,根据实施例的控制器110可以包括中央处理单元(CPU)111、主机接口(IF)113、工作存储器115、缓冲器管理器117和存储器接口(IF)119。
CPU 111可以被配置为将关于存储部120的数据读取或写入操作所需的各种控制信息传送到主机接口113、工作存储器115、缓冲器管理器117和存储器接口119。在一个实施例中,CPU 111可以根据针对数据存储装置10的各种操作提供的固件来操作。在一个实施例中,CPU 111可以执行闪存转换层(FTL)的功能,该闪存转换层执行用于管理存储部120的垃圾收集、地址映射、耗损均衡等。CPU 111可以根据实现类型来检测并且校正从存储部120读出的数据的错误。
主机接口113可以从主机装置(例如,主机处理器)接收命令和时钟信号,并且根据CPU 111的控制来提供用于控制数据输入/输出的通信信道。特别地,主机接口113可以在主机装置和数据存储装置10之间提供物理连接。主机接口113可以响应于主机装置的总线格式而提供与数据存储装置10的对接。主机装置的总线格式可以包括各种标准接口协议中的至少一种,诸如安全数字、通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、个人计算机存储器卡国际协会(PCMCIA)、并行高级技术附件(PATA)、串行高级技术附件(SATA)、小型计算机系统接口(SCSI)、串行连接SCSI(SAS)、外围部件互连(PCI)、PCI快速(PCI-E)和通用闪存(UFS)。
工作存储器115可以存储程序代码,例如,控制器110的操作所需的固件或软件,以及存储由程序代码使用的代码数据等。
缓冲器管理器117可以被配置为将在编程操作或读取操作期间在主机装置和存储部120之间发送和接收的数据临时存储在缓冲器存储器130中。缓冲器管理器117可以被配置为管理缓冲器存储器的使用状态。
存储器接口119可以提供用于在控制器110和存储部120之间发送和接收信号的通信信道。存储器接口119可以根据CPU 111的控制来将临时存储在缓冲器存储器130中的数据写入存储部120中。存储器接口119可以将从存储部120读出的数据传送到缓冲器存储器130,并且将数据临时存储在缓冲器存储器130中。
写入控制部件20可以被配置为支持条带写入功能。在一个实施例中,写入控制部件20可以响应于主机装置的写入请求而将作为一组多个单位数据的第一类型块数据临时存储在缓冲器存储器130中。写入控制部件20可以将临时存储在缓冲器存储器130中的第一类型块数据中的至少一个写入第一存储器区域121中。然后,当新的第一类型块数据被引入缓冲器存储器130时,写入控制部件20可以通过对存储在第一存储器区域121中的至少一个单位数据和新的第一类型块数据中的至少一个单位数据进行组合来生成至少一个第二类型块数据。生成的第二类型块数据可以被写入第二存储器区域123中。尽管在图2中所示,写入控制部件20与CPU 111分离,在另一实施例中,写入控制部件20可以设置在CPU 111内。
图3是根据实施例的写入控制部件(例如,写入控制部件20)的配置图。
参考图3,写入控制部件20可以包括预写入部件201、组合部件203和主写入部件205。
预写入部件201可以响应于主机装置的写入请求而将第一类型块数据临时存储在缓冲器存储器130中,第一类型块数据是一组多个单位数据。预写入部件201可以将临时存储在缓冲器存储器130中的第一类型块数据中的至少一个写入第一存储器区域121中。
在一个实施例中,存储部120可以包括多个管芯,每个管芯可以包括第一存储器区域121和第二存储器区域123。
写入控制部件20的预写入部件201可以将构成临时存储在缓冲器存储器130中的第一类型块数据的单位数据并行地分配和存储在多个管芯的第一存储器区域121中。在一个实施例中,构成第一存储器区域121的单位存储器单元可以被设置为存储1位数据。
当新的第一类型块数据被引入缓冲器存储器130时,组合部件203可以通过对存储在第一存储器区域121中的至少一个单位数据和新的第一类型块数据的至少一个单位数据进行组合来生成至少一个第二类型块数据。
在一个实施例中,存储部120可以包括第一管芯至第四管芯,并且当前第一类型块数据可以包括第一单位数据至第四单位数据。预写入部件201可以将当前第一类型块数据的第一单位数据至第四单位数据并行地分配和存储在第一管芯至第四管芯中。类似地,在当前第一类型块数据之后引入缓冲器存储器130的新的第一类型块数据可以包括第五单位数据至第八单位数据,并且预写入部件201可以将这些第五单位数据至第八单位数据并行地分配和存储在第一管芯至第四管芯中。
作为在新的第一类型块数据之后引入缓冲器存储器130中的第一类型块数据的随后第一类型块数据可以包括第九单位数据至第十二单位数据。
组合部件203可以通过分别从当前第一类型块数据、新的第一类型块数据和随后第一类型块数据中的每一个中选择单位数据来生成第二类型块数据。在一个实施例中,组合部件203可以通过组合第一单位数据、第五单位数据和第九单位数据来生成第二类型块数据的第一段,通过组合第二单位数据、第六单位数据和第十单位数据来生成第二类型块数据的第三段,通过组合第三单位数据、第七单位数据和第十一单位数据来生成第二类型块数据的第二段,以及通过组合第四单位数据、第八单位数据和第十二单位数据来生成第二类型块数据的第四段。
主写入部件205可以将在组合部件203中生成的各段第二类型块数据写入第二存储器区域123中。
在一个实施例中,构成第二存储器区域123的存储器单元可以被设置为存储3位数据。组合部件203可以以要在第二存储器区域123中同时写入的数据的单位来生成第二类型块数据,例如,以要通过单个一次编程操作同时写入第二存储器区域123的数据的单位,并且主写入部件205可以通过一次编程操作将第二类型块数据写入第二存储器区域123。
一次编程操作可以指通过一个编程周期来存储多级单元(MLC)的多个编程状态的编程操作。例如,用于2位MLC的一次编程操作可以指通过一个编程周期在一个存储器单元中编程2位数据的编程操作。一次编程操作可以与在一个编程周期期间在MLC中存储1位数据的阴影编程方法进行比较。
当在组合部件203中生成多个第二类型块数据时,主写入部件205可以将多个第二类型块数据并行地分配和存储在不同管芯的第二存储器区域123中。
第二类型块数据之中的从第一存储器区域121选择的单位数据可以经由页缓冲器125从第一存储器区域121传送到第二存储器区域123,而不涉及缓冲器存储器130。
因此,构成存储部120的存储空间的部分可以被用作用于条带写入的临时存储空间。因此,可以充分确保其中保持数据以生成第二类型块数据的临时存储空间。当生成第二类型块数据时,可以通过一次编程方法高速写入第二类型块数据。
图4至图9是示出根据实施例的数据存储装置的写入方法的图。
如图4中所示,当多个第一类型块数据从主机装置发送时,预写入部件201可以将第一类型块数据存储在缓冲器存储器1301中。
在一个实施例中,第一类型块数据可以包括第一类型块数据D1和第一类型块数据D2,第一类型块数据D1包括第一单位数据D01至第四单位数据D04,第一类型块数据D2包括第五单位数据D05至第八单位数据D08。可以在第一类型块数据D2之前接收第一类型块数据D1。不同的第一类型块数据(即,D1、D2、D3和D4)中的每一个可以被考虑和被称为段。
然后,如图5A所示,预写入部件201可以将单位数据D01至D04和D05至D08并行地分配和存储在多个管芯1201(管芯0至管芯3)的第一存储器区域121中。
存储部120可以包括至少一个芯片,该芯片可以包括多个管芯(管芯0至管芯3),每个管芯可以包括至少一个平面1203。平面1203可以包括至少一个块1205,并且块1205可以包括至少一个页1207。第一类型块数据D1的单位数据D01至D04和第一类型块数据D2的单位数据D05至D08可以被分配并存储在管芯0至管芯3中。
在第一类型块数据D1和第一类型块数据D2被写入第一存储器区域121之后,缓冲器存储器1301可以是空的,如图5B所示。
如图6所示,可以将随后第一类型块数据D3引入缓冲器存储器1301。第一类型块数据D3可以包括第九单位数据D09至第十二单位数据D12。
然后,组合部件203可以通过从第一类型块数据D1、第一类型块数据D2和第一类型块数据D3中的每一个中选择一个单位数据来生成第二类型块数据。
如图7所示,组合部件203可以通过组合第一单位数据、第五单位数据和第九单位数据来生成第二类型块数据1,通过组合第二单位数据、第六单位数据和第十单位数据来生成第二类型块数据3,通过组合第三单位数据、第七单位数据和第十一单位数据来生成第二类型块数据2,以及通过组合第四单位数据、第八单位数据和第十二单位数据来生成第二类型块数据4。
主写入部件205可以将第二类型块数据的段1、2、3和4移动到管芯的页缓冲器125。
在将第二类型块数据的段移动到管芯的页缓冲器125之后,可以删除缓冲器存储器1301的第一类型块数据D3的单位数据D09至D12,如图8所示。
此外,如图9所示,主写入部件205可以将第二类型块数据的各段写入第二存储器区域123中的页缓冲器中。在一个实施例中,主写入部件205可以通过一次编程方法在管芯中分配和写入多个第二类型块数据,例如,第二类型块数据1、2、3和4。
图10是示出根据实施例的数据存储装置的读取方法的图。
当数据被分配并存储在多个管芯中时,也可以改善读取操作性能。
单位数据的读取操作可以包括从存储器单元的数据读出操作和对主机装置的读取数据传输操作。
参照图10,从管芯的存储器单元读取单位数据的操作(1)至(12)以及将数据传输到主机装置的传输操作(D.O)可以被并行地执行,因此可以提高读取性能。
图11是示出根据实施例的数据存储系统的图。
参考图11,数据存储系统1000可以包括主机装置1100和数据存储装置1200。在一个实施例中,数据存储装置1200可以被配置作为固态驱动器(SSD)。
数据存储装置1200可以包括控制器1210、多个非易失性存储器装置1220-0至1220-n、缓冲器存储器装置1230、电源1240、信号连接器1101和电源连接器1103。
控制器1210可以控制数据存储装置1200的一般操作。控制器1210可以包括主机接口、控制部件、用作工作存储器的随机存取存储器、纠错码(ECC)部件和存储器接口。在一个实施例中,控制器1210可以由如图1至图3所示的控制器110实现。
主机装置1100可以通过信号连接器1101与数据存储装置1200交换信号。该信号可以包括命令、地址、数据和其他相关信息。
控制器1210可以分析和处理从主机装置1100接收的信号。控制器1210可以根据用于驱动数据存储装置1200的固件或软件来控制内部功能块的操作。
缓冲器存储器装置1230可以临时存储要存储在非易失性存储器装置1220-0至1220-n中的至少一个中的数据。此外,缓冲器存储器装置1230可以临时存储从非易失性存储器装置1220-0至1220-n中的至少一个读取的数据。临时存储在缓冲器存储器装置1230中的数据可以根据控制器1210的控制被发送到主机装置1100或非易失性存储器装置1220-0至1220-n中的至少一个。
非易失性存储器装置1220-0至1220-n可以用作数据存储装置1200的存储介质。非易失性存储器装置1220-0至1220-n可以分别通过多个通道CH0至CHn与控制器1210耦合。一个或多个非易失性存储器装置可以耦合到一个通道。耦合到每个通道的非易失性存储器装置可以耦合到相同的信号总线和数据总线。
电源1240可以将通过电源连接器1103输入的电源提供给数据存储装置1200的部件。电源1240可以包括辅助电源。辅助电源可以提供电源以允许数据存储装置1200在突然断电发生时正确地终止。辅助电源可以包括大容量电容器。
取决于主机装置1100和数据存储装置1200之间的接口方案,信号连接器1101可以由各种类型的连接器中的任何一种来被配置。
取决于主机装置1100的供电方案,电源连接器1103可以由各种类型的连接器中的任何一种来被配置。
图12是示出根据实施例的数据处理系统的图。参考图12,数据处理系统3000可以包括主机装置3100和存储器系统3200。
主机装置3100可以以诸如印刷电路板的板的形式配置。虽然未示出,但是主机装置3100可以包括用于执行主机装置的功能的内部功能块。
主机装置3100可以包括连接端子3110,诸如插座、插槽或连接器。存储器系统3200可以安装到连接端子3110。
存储器系统3200可以以诸如印刷电路板的板的形式配置。存储器系统3200可以是存储器模块或存储器卡。存储器系统3200可以包括控制器3210、缓冲器存储器装置3220、非易失性存储器装置3231和3232、电源管理集成电路(PMIC)3240和连接端子3250。
控制器3210可以控制存储器系统3200的一般操作。控制器3210可以以与图1至图3中所示的控制器110相同的方式配置。
缓冲器存储器装置3220可以临时存储要存储在非易失性存储器装置3231和3232中的数据。此外,缓冲器存储器装置3220可以临时存储从非易失性存储器装置3231和3232读取的数据。临时存储在缓冲器存储器装置3220中的数据可以根据控制器3210的控制被发送到主机装置3100或非易失性存储器装置3231和3232。
非易失性存储器装置3231和3232可以被用作存储器系统3200的存储介质。
PMIC 3240可以将通过连接端子3250输入的电源提供给存储器系统3200的部件。PMIC 3240可以根据控制器3210的控制来管理存储器系统3200的电源。
连接端子3250可以耦合到主机装置3100的连接端子3110。通过连接端子3250,可以在主机装置3100和存储器系统3200之间传送诸如命令、地址和数据之类的信号以及电源。取决于主机装置3100和存储器系统3200之间的接口方案,连接端子3250可以被配置作为各种类型中的任何一种。连接端子3250可以设置在存储器系统3200的任何一侧。
图13是示出根据实施例的数据处理系统的图。参考图13,数据处理系统4000可以包括主机装置4100和存储器系统4200。
主机装置4100可以以诸如印刷电路板的板的形式配置。虽然未示出,但是主机装置4100可以包括用于执行主机装置的功能的内部功能块。
存储器系统4200可以以表面安装型封装的形式配置。存储器系统4200可以通过焊球4250安装到主机装置4100。存储器系统4200可以包括控制器4210、缓冲器存储器装置4220和非易失性存储器装置4230。
控制器4210可以控制存储器系统4200的一般操作。控制器4210可以以与图1至图3中所示的控制器110相同的方式配置。
缓冲器存储器装置4220可以临时存储要存储在非易失性存储器装置4230中的数据。此外,缓冲器存储器装置4220可以临时存储从非易失性存储器装置4230读取的数据。临时存储在缓冲器存储器装置4220中的数据可以根据控制器4210的控制被发送到主机装置4100或非易失性存储器装置4230。
非易失性存储器装置4230可以被用作存储器系统4200的存储介质。
图14是示出根据实施例的包括数据存储装置的网络系统的图。参考图14,网络系统5000可以包括服务器系统5300和通过网络5500耦合的多个客户端系统5410至5430。
服务器系统5300可以响应于来自多个客户端系统5410至5430的请求而服务数据。例如,服务器系统5300可以存储从多个客户端系统5410至5430提供的数据。又例如,服务器系统5300可以向多个客户端系统5410至5430提供数据。
服务器系统5300可以包括主机装置5100和存储器系统5200。存储器系统5200可以由图1所示的存储器系统10、图11所示的数据存储装置1200、图12所示的存储器系统3200或图13所示的存储器系统4200实现。
图15是示出根据实施例的数据存储装置中包括的非易失性存储器装置的框图。参照图15,非易失性存储器装置300可以包括存储器单元阵列310、行解码器320、数据读取/写入块330、列解码器340、电压发生器350和控制逻辑360。
存储器单元阵列310可以包括存储器单元MC,其布置在字线WL1至WLm和位线BL1至BLn彼此交叉的区域处。
存储器单元阵列310可以包括沿着半导体衬底的平坦表面延伸的以及相对于该表面垂直延伸的三维存储器阵列。也就是说,在三维存储器阵列的NAND串中,存储器单元相对于半导体衬底的表面在水平和垂直方向上排列。存储器单元可以不同地间隔开以提供不同的集成度。
三维存储器阵列的结构不限于此。三维存储器阵列的维度不需要相对于半导体衬底的表面。
行解码器320可以通过字线WL1至WLm与存储器单元阵列310耦合。行解码器320可以根据控制逻辑360的控制来操作。行解码器320可以解码从外部装置(未示出)提供的地址。行解码器320可以基于解码结果来选择和驱动字线WL1至WLm。例如,行解码器320可以将从电压发生器350提供的字线电压提供给字线WL1至WLm。
数据读取/写入块330可以通过位线BL1至BLn与存储器单元阵列310耦合。数据读取/写入块330可以包括分别对应于位线BL1至BLn的读取/写入电路RW1至RWn。数据读取/写入块330可以根据控制逻辑360的控制来操作。根据操作模式,数据读取/写入块330可以作为写入驱动器或感测放大器操作。例如,数据读取/写入块330可以作为写入驱动器操作,其在写入操作中将从外部装置提供的数据存储在存储器单元阵列310中。又例如,数据读取/写入块330可以作为感测放大器操作,其在读取操作中从存储器单元阵列310读出数据。
列解码器340可以根据控制逻辑360的控制来操作。列解码器340可以解码从外部装置提供的地址。列解码器340可以基于解码结果将分别与位线BL1至BLn对应的数据读取/写入块330的读取/写入电路RW1至RWn与数据输入/输出线或数据输入/输出缓冲器耦合。
电压发生器350可以生成要在非易失性存储器装置300的内部操作中使用的电压。由电压发生器350生成的电压可以施加到存储器单元阵列310的存储器单元。例如,编程操作中生成的编程电压可以被施加到要对其执行编程操作的存储器单元的字线。又例如,擦除操作中生成的擦除电压可以被施加到要对其执行擦除操作的存储器单元的阱区域。再例如,读取操作中生成的读取电压可以被施加到要对其执行读取操作的存储器单元的字线。
控制逻辑360可以基于从外部装置提供的控制信号来控制非易失性存储器装置300的一般操作。例如,控制逻辑360可以控制非易失性存储器装置300的操作,诸如非易失性存储器装置300的读取、写入和擦除操作。
虽然上面已经说明和描述了各种实施例,但是本领域技术人员根据本公开将理解所描述的实施例仅是示例。因此,本发明不限于所描述的实施例。
本发明的上述实施例旨在说明而不是限制本发明。各种替代和等同物是可能的。本发明不受本文描述的实施例的限制。本发明也不限于任何特定类型的半导体装置。各种添加、减少或修改鉴于本公开将是显而易见的,并且均被本发明包含在内,只要它们落入所附权利要求的范围。
Claims (19)
1.一种数据存储装置,包括:
存储部,包括第一存储器区域和第二存储器区域;
缓冲器存储器,被配置为临时存储要存储在所述存储部中的数据;以及
控制器,被配置为控制要存储在所述存储部中的所述数据,
其中所述控制器包括:
预写入部件,被配置为将由多个单位数据配置的第一类型块数据从所述缓冲器存储器写入所述第一存储器区域中;
组合部件,被配置为通过组合构成所述第一类型块数据的由所述预写入部件写入所述第一存储器区域中的第一段的至少一个单位数据和构成所述第一类型块数据的第二段的至少一个单位数据来生成第二类型块数据的至少一段,其中所述第一类型块数据的所述第二段在所述第一类型块数据的所述第一段之后被引入所述缓冲器存储器并且没有被传输到所述第一存储器区域;以及
主写入部件,被配置为将由所述组合部件生成的所述第二类型块数据的至少一段写入所述第二存储器区域中。
2.根据权利要求1所述的数据存储装置,其中所述存储部包括多个管芯,并且所述多个管芯中的每个管芯被配置为包括所述第一存储器区域和所述第二存储器区域。
3.根据权利要求2所述的数据存储装置,其中所述预写入部件被配置为将构成所述第一类型块数据的所述第一段的多个单位数据分配和存储在所述多个管芯的所述第一存储器区域中。
4.根据权利要求2所述的数据存储装置,其中所述主写入部件被配置为将所述第二类型块数据的至少一段分配和存储在所述多个管芯的所述第二存储器区域中。
5.根据权利要求2所述的数据存储装置,其中构成所述第一类型块数据的所述第一段的多个单位数据的数目与所述多个管芯的数目相同。
6.根据权利要求1所述的数据存储装置,
其中所述存储部包括页缓冲器,以及
其中所述主写入部件被配置为经由所述页缓冲器将所述第二类型块数据的至少一段传送到所述第二存储器区域。
7.根据权利要求1所述的数据存储装置,其中所述主写入部件被配置为通过一次编程方法将所述第二类型块数据的至少一段写入所述第二存储器区域中。
8.根据权利要求2所述的数据存储装置,
其中所述第一类型块数据的所述第一段包括第一单位数据至第四单位数据,
其中所述第一类型块数据的所述第二段包括第五单位数据至第八单位数据,
其中所述多个管芯包括第一管芯至第四管芯,
其中所述预写入部件被配置为将所述第一类型块数据的所述第一段分配和存储在所述第一管芯至所述第四管芯的所述第一存储器区域中,并且将所述第一类型块数据的所述第二段分配和存储在所述第一管芯至所述第四管芯的所述第一存储器区域中,以及
其中所述组合部件被配置为:在包括第九单位数据至第十二单位数据的所述第一类型块数据的第三段被引入到所述缓冲器存储器中时,分别通过从所述第一类型块数据的所述第一段至所述第三段中的每一个中选择一个单位数据,来生成所述第二类型块数据的至少一段。
9.根据权利要求1所述的数据存储装置,其中所述存储部被设置为将1位数据存储在构成所述第一存储器区域的存储器单元中,并且将多位数据存储在构成所述第二存储器区域的存储器单元中。
10.一种数据存储装置,包括:
存储部,包括非易失性缓冲器和非易失性用户数据存储区域;
易失性缓冲器,被配置为临时存储要存储在所述存储部中的数据;以及
控制器,被配置为通过组合临时存储在所述非易失性缓冲器中的第一类型块数据的第一单位数据和临时存储在所述易失性缓冲器中并且没有被传输到所述非易失性缓冲器的第一类型块数据的第二单位数据来生成第二类型块数据,并且将所述第二类型块数据存储在所述非易失性用户数据存储区域中。
11.根据权利要求10所述的数据存储装置,其中所述控制器被配置为通过一次编程方法将所述第二类型块数据写入所述非易失性用户数据存储区域中。
12.根据权利要求10所述的数据存储装置,其中构成所述非易失性缓冲器的存储器单元被设置为存储1位数据,并且构成所述非易失性用户数据存储区域的存储器单元被设置为存储多位数据。
13.一种数据存储装置的操作方法,所述数据存储装置包括:包括第一存储器区域和第二存储器区域的存储部、缓冲器存储器、以及被配置为控制要存储在所述存储部中的数据的控制器,所述方法包括:
由所述控制器将由多个单位数据配置的第一类型块数据从所述缓冲器存储器写入所述第一存储器区域中;
由所述控制器通过组合构成所述第一类型块数据的第一段的至少一个单位数据和构成所述第一类型块数据的第二段的至少一个单位数据来生成第二类型块数据的至少一段,所述第一类型块数据的所述第二段在所述第一类型块数据的所述第一段之后被引入所述缓冲器存储器并且没有被传输到所述第一存储器区域;以及
由所述控制器将所述第二类型块数据的至少一段写入所述第二存储器区域中。
14.根据权利要求13所述的方法,
其中所述存储部包括多个管芯,并且所述多个管芯中的每个管芯包括所述第一存储器区域和所述第二存储器区域,以及
其中写入所述第一存储器区域中包括:将构成所述第一类型块数据的所述第一段的多个单位数据分配和存储在所述多个管芯的所述第一存储器区域中。
15.根据权利要求13所述的方法,
其中所述存储部包括多个管芯,并且所述多个管芯中的每个管芯包括所述第一存储器区域和所述第二存储器区域,以及
其中写入所述第二存储器区域中包括:将所述第二类型块数据的至少一段分配和存储在所述多个管芯的所述第二存储器区域中。
16.根据权利要求13所述的方法,
其中所述存储部包括多个管芯,并且所述多个管芯中的每个管芯包括所述第一存储器区域和所述第二存储器区域,以及
其中构成所述第一类型块数据的所述第一段的多个单位数据的数目与所述多个管芯的数目相同。
17.根据权利要求13所述的方法,
其中所述存储部包括页缓冲器,以及
其中写入所述第二存储器区域中包括:经由所述页缓冲器将所述第二类型块数据的至少一段传送到所述第二存储器区域。
18.根据权利要求13所述的方法,其中写入所述第二存储器区域中包括:通过一次编程方法将所述第二类型块数据的至少一段写入所述第二存储器区域中。
19.根据权利要求13所述的方法,其中构成所述第一存储器区域的存储器单元被设置为存储1位数据,并且构成所述第二存储器区域的存储器单元被设置为存储多位数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020180153901A KR102653845B1 (ko) | 2018-12-03 | 2018-12-03 | 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템 |
KR10-2018-0153901 | 2018-12-03 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111258494A CN111258494A (zh) | 2020-06-09 |
CN111258494B true CN111258494B (zh) | 2023-07-18 |
Family
ID=70849118
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910812646.2A Active CN111258494B (zh) | 2018-12-03 | 2019-08-30 | 数据存储装置及操作方法、具有数据存储装置的存储系统 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11119698B2 (zh) |
KR (1) | KR102653845B1 (zh) |
CN (1) | CN111258494B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102385572B1 (ko) * | 2021-11-02 | 2022-04-13 | 삼성전자주식회사 | 컨트롤러, 스토리지 장치 및 스토리지 장치의 동작 방법 |
US20230280936A1 (en) * | 2022-03-03 | 2023-09-07 | Samsung Electronics Co., Ltd. | Parallel processing in computational storage |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008158832A (ja) * | 2006-12-25 | 2008-07-10 | Fujitsu Ltd | ブロックデータの部分更新装置、ブロックデータの部分更新方法、およびブロックデータの部分更新プログラム |
CN103176752A (zh) * | 2012-07-02 | 2013-06-26 | 晶天电子(深圳)有限公司 | 带有耐用转换层及临时文件转移功能从而实现闪速存储器磨损降低的超耐用固态驱动器 |
CN108733319A (zh) * | 2017-04-17 | 2018-11-02 | 桑迪士克科技有限责任公司 | 用于非易失性存储器中的混合推拉数据管理的系统和方法 |
Family Cites Families (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS4813155B1 (zh) * | 1967-03-23 | 1973-04-25 | ||
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 |
US6151011A (en) * | 1998-02-27 | 2000-11-21 | Aurora Systems, Inc. | System and method for using compound data words to reduce the data phase difference between adjacent pixel electrodes |
GB0031733D0 (en) * | 2000-12-28 | 2001-02-07 | Power X Ltd | Method and device for operating a ram memory |
JP4813155B2 (ja) * | 2005-11-17 | 2011-11-09 | 三菱電機株式会社 | データ管理装置、データ管理装置のデータ管理方法およびデータ管理プログラム |
US7346762B2 (en) * | 2006-01-06 | 2008-03-18 | Apple Inc. | Replacing instruction and corresponding instructions in a queue according to rules when shared data buffer is accessed |
US8094500B2 (en) * | 2009-01-05 | 2012-01-10 | Sandisk Technologies Inc. | Non-volatile memory and method with write cache partitioning |
US8040744B2 (en) * | 2009-01-05 | 2011-10-18 | Sandisk Technologies Inc. | Spare block management of non-volatile memories |
US20110153912A1 (en) * | 2009-12-18 | 2011-06-23 | Sergey Anatolievich Gorobets | Maintaining Updates of Multi-Level Non-Volatile Memory in Binary Non-Volatile Memory |
US8621145B1 (en) * | 2010-01-29 | 2013-12-31 | Netapp, Inc. | Concurrent content management and wear optimization for a non-volatile solid-state cache |
US9235530B2 (en) * | 2010-05-31 | 2016-01-12 | Sandisk Technologies Inc. | Method and system for binary cache cleanup |
JP2013157068A (ja) * | 2012-01-31 | 2013-08-15 | Toshiba Corp | データ記憶制御装置、データ記憶装置、及びデータ記憶方法 |
KR102016041B1 (ko) * | 2012-10-11 | 2019-08-30 | 삼성전자주식회사 | 비휘발성 메모리 장치의 프로그램 방법 |
KR102245822B1 (ko) * | 2014-11-26 | 2021-04-30 | 삼성전자주식회사 | 불휘발성 메모리 장치를 포함하는 저장 장치 및 그것의 프로그램 방법 |
US10069766B2 (en) * | 2015-07-07 | 2018-09-04 | TransferSoft, Inc. | Accelerated data transfer using thread pool for parallel operations |
KR20170075855A (ko) | 2015-12-23 | 2017-07-04 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR102523965B1 (ko) * | 2016-03-21 | 2023-04-21 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 |
KR102643467B1 (ko) * | 2016-05-31 | 2024-03-06 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
US10489077B2 (en) * | 2017-05-28 | 2019-11-26 | Western Digital Technologies, Inc. | Systems and methods for controlling metapage storage on data storage devices |
-
2018
- 2018-12-03 KR KR1020180153901A patent/KR102653845B1/ko active IP Right Grant
-
2019
- 2019-07-31 US US16/528,000 patent/US11119698B2/en active Active
- 2019-08-30 CN CN201910812646.2A patent/CN111258494B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008158832A (ja) * | 2006-12-25 | 2008-07-10 | Fujitsu Ltd | ブロックデータの部分更新装置、ブロックデータの部分更新方法、およびブロックデータの部分更新プログラム |
CN103176752A (zh) * | 2012-07-02 | 2013-06-26 | 晶天电子(深圳)有限公司 | 带有耐用转换层及临时文件转移功能从而实现闪速存储器磨损降低的超耐用固态驱动器 |
CN108733319A (zh) * | 2017-04-17 | 2018-11-02 | 桑迪士克科技有限责任公司 | 用于非易失性存储器中的混合推拉数据管理的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111258494A (zh) | 2020-06-09 |
KR20200067038A (ko) | 2020-06-11 |
US20200174701A1 (en) | 2020-06-04 |
US11119698B2 (en) | 2021-09-14 |
KR102653845B1 (ko) | 2024-04-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11520504B2 (en) | Data storage device and operating method thereof | |
US11055007B2 (en) | Data storage device, operation method thereof and storage system having the same | |
CN111414312B (zh) | 数据存储装置及其操作方法 | |
US10719262B2 (en) | Data storage apparatus, operating method thereof, and storage system having the same | |
US20200117559A1 (en) | Data storage device and operating method thereof | |
US12001331B2 (en) | Data storage device, operation method thereof, and storage system including the same | |
US11543990B2 (en) | Data storage apparatus with extended lifespan and operation method thereof | |
CN111258494B (zh) | 数据存储装置及操作方法、具有数据存储装置的存储系统 | |
US20200081649A1 (en) | Data storage device, operation method thereof and storage system including the same | |
US11635896B2 (en) | Method and data storage apparatus for replacement of invalid data blocks due to data migration | |
US20200327069A1 (en) | Data storage device and operation method thereof, controller using the same | |
US20200089421A1 (en) | Data storage device, operation method thereof, and storage system including the same | |
US20210333999A1 (en) | Data storage device, operation method thereof and storage system having the same | |
CN111414314B (zh) | 数据存储装置、其操作方法及其控制器 | |
US10606509B2 (en) | Data storage device managing write tag, writing operation method thereof, and storage system including the same | |
CN109840214B (zh) | 数据存储装置及其操作方法 | |
US11593006B2 (en) | Data storage apparatus and method for managing valid data based on bitmap table |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |