CN112783429A - 数据存储装置、使用其的存储系统及其操作方法 - Google Patents
数据存储装置、使用其的存储系统及其操作方法 Download PDFInfo
- Publication number
- CN112783429A CN112783429A CN202010671635.XA CN202010671635A CN112783429A CN 112783429 A CN112783429 A CN 112783429A CN 202010671635 A CN202010671635 A CN 202010671635A CN 112783429 A CN112783429 A CN 112783429A
- Authority
- CN
- China
- Prior art keywords
- data
- data storage
- memory device
- storage device
- nonvolatile memory
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- 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/0631—Configuration or reconfiguration of storage systems by allocating resources to 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/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/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/0647—Migration mechanisms
- G06F3/0649—Lifecycle management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
-
- 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
- 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/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- 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/0653—Monitoring storage devices or 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/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/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
Abstract
本申请公开了一种数据存储装置和包括该数据存储装置的存储系统。该数据存储装置包括:非易失性存储器装置,被配置为存储用户数据和包括与该用户数据相匹配的数据类型标识信息的元数据;以及控制器,当非易失性存储器装置的编程‑擦除(PE)循环次数等于或大于参考值时,控制非易失性存储器装置切换到仅用于存储冷数据的冷数据存储装置。
Description
相关申请的交叉引用
本申请要求于2019年11月11日提交的申请号为10-2019-0143315的韩国专利申请的优先权,该韩国专利申请通过引用整体并入本文。
技术领域
各个实施例总体涉及一种半导体装置,并且更特别地,涉及一种数据存储装置和使用该数据存储装置的存储系统。
背景技术
全闪存阵列(AFA)是仅包括闪速存储器驱动器而不包括机械磁盘驱动器的存储基础架构。AFA可以被定义为基于网络的存储系统,并且被称为固态阵列(SSA)。
这种AFA解决方案可以构成可在云/虚拟机环境下使用的存储池,并且提供高可用性、高性能和各种接口。AFA架构可以以基于闪存的架构和基于固态驱动器(SSD)的架构为主导。
AFA SSD是确保稳定性能的磁盘驱动器,并且已经基于每日驱动器写入(DWPD)来管理AFA SSD的寿命。然而,由于NAND闪速存储器装置的多单元存储性能根据例如单层单元(SLC)模式、多层单元(MLC)模式、三层单元(TLC)模式或四层单元(QLC)模式的存储器模式而改变,所以AFA SSD的性能和寿命也相应地改变,因此需要针对这些问题的解决方案。
发明内容
实施例涉及一种在AFA环境下能够提高数据存储装置的寿命和利用能力的数据存储装置以及使用该数据存储装置的存储系统。
在本公开的实施例中,一种数据存储装置可以包括:非易失性存储器装置,存储用户数据和包括与用户数据匹配的数据类型标识信息的元数据;以及控制器,当非易失性存储器装置的编程-擦除(PE)循环次数等于或大于参考值时,控制非易失性存储器装置切换到仅用于存储冷数据的冷数据存储装置,其中在将非易失性存储器装置切换到冷数据存储装置时,控制器将用户数据之中的第一类型数据移动到外部数据存储装置中,并且将用户数据之中的、存储在非易失性存储器装置的第一存储器模式区域中的第二类型数据移动到非易失性存储器装置的第二存储器模式区域中,并且其中根据写入请求,控制器根据写入数据的类型将写入数据写入第一存储器模式区域和第二存储器模式区域中的一个中。
在本公开的实施例中,一种存储系统可以包括:主机中央处理单元(CPU),根据多个数据存储装置中的每个的编程-擦除(PE)循环的次数来确定是否将多个数据存储装置中的每个使用为仅用于存储冷数据的冷数据存储装置;以及多个数据存储装置,与主机CPU通信;根据多个数据存储装置中的每个中包括的非易失性存储器装置的PE循环的次数,多个数据存储装置中的每个改变非易失性存储器装置的存储器模式;在改变存储器模式时,根据非易失性存储器装置中存储的数据的数据类型和写入数据的数据类型来确定数据存储位置,并且将非易失性存储器装置中存储的数据和写入数据存储在所确定的数据存储位置中。
在本公开的实施例中,一种操作存储系统的方法,该存储系统包括主机CPU和多个数据存储装置,该方法包括:检查多个数据存储装置中的每个的PE循环次数;确定PE循环的次数是否等于或大于参考值;将PE循环次数等于或大于参考值的数据存储装置改变为仅存储冷数据的冷数据存储装置;根据数据存储装置的非易失性存储器装置中存储的数据的数据类型和由主机CPU提供的写入数据的数据类型来确定数据存储位置;并且将非易失性存储器装置中存储的数据和写入数据存储在所确定的数据存储位置中。
根据本公开的实施例,当在AFA环境下,数据存储装置的寿命等于或小于参考值时,将相应的数据存储装置切换为冷数据存储装置,因此可以延长数据存储装置的寿命,并且可以提高数据存储装置的性能。
根据本公开的实施例,因为TLC模式的存储器区域或SLC模式的存储器区域被切换为QLC模式的存储器区域,因此可以进一步确保存储空间。
下面更详细地描述了这些和其它特征、方面和实施例。
附图说明
通过结合附图的以下具体实施方式,将更清楚地理解本公开的主题的上述和其它方面、特征和优点,其中:
图1是示出根据本公开的实施例的存储系统的示图;
图2是示出根据本公开的另一实施例的存储系统的示图;
图3是示出根据本公开的实施例的数据存储装置的示图;
图4是示出根据本公开的实施例的存储器模式的切换方法的示图;
图5是示出根据本公开的实施例的数据存储的示图;
图6和图7是示出根据本公开的实施例的冷数据存储的示图;
图8是示出根据实施例的执行数据重排的方法的流程图;
图9是示出根据本公开的实施例的包括固态驱动器(SSD)的数据处理系统的示图;
图10是示出根据本公开的实施例的图9所示的控制器的示图;
图11是示出根据本公开的实施例的包括数据存储装置的数据处理系统的示图;
图12是示出根据本公开的实施例的包括数据存储装置的数据处理系统的示图;
图13是示出根据本公开的实施例的包括数据存储装置的网络系统的示图;以及
图14是示出根据本公开的实施例的数据存储装置中包括的非易失性存储器装置的示图。
具体实施方式
下面参照附图更详细地描述了本发明的各个实施例。然而,本发明的特征和方面可以与本文所公开的不同地配置或布置。因此,本发明不限于所公开的实施例。相反,本发明涵盖落入权利要求范围内的任何所公开实施例的所有修改和变化。此外,在整个说明书中,对“实施例”等的参考不一定仅针对一个实施例,并且对任何这种短语的不同参考不一定针对相同实施例。
将理解的是,当元件或层被称为在另一元件或层“上”,或者“连接到”另一元件或层,或者与另一元件或层“联接”时,其可以直接在另一元件或层“上”或直接与另一元件或层“连接”或“联接”,或者可以存在一个或多个中间元件或层。将进一步理解的是,当在本说明书中使用术语“包括”和/或“包括有”时,并不排除存在或添加其它未陈述的元件。类似地,除非另外说明或上下文清楚地指示仅一个,否则术语“一”和“一个”表示一个或多个。
图1是示出根据实施例的存储系统1的示图,图2是示出根据另一实施例的存储系统1的示图。
图4是说明根据实施例的主机CPU的存储器模式的切换方法的示图,图5是示出根据实施例的数据存储示例的示图,图6和图7是说明根据实施例的冷数据存储示例的示图。下文中,将参照图4至图7描述包括数据存储装置的数据存储系统。
参照图1,存储系统1可以包括数据存储装置10和联接到该数据存储装置10的主机中央处理单元(CPU)20。数据存储装置10可以包括多个数据存储装置10a1至10an,n为正整数。为了便于说明,在下文中,数据存储装置10可以代表多个数据存储装置10a1至10an中的任意一个。
参照图2,存储系统1可以利用主机CPU 20和数据存储装置10来实现。主机CPU 20可以包括多个主机CPU,并且数据存储装置10可以包括多个数据存储装置。为了便于说明,在下文中,数据存储装置10可以代表多个数据存储装置中的任意一个。主机CPU 20和数据存储装置10可以构成多个组。多个组中的每一组包括相应的主机CPU和联接到相应的主机CPU的多个数据存储装置。例如,如图2所示,存储系统1可以包括三组:第一组包括主机CPU20a和与主机CPU 20a相对应的多个数据存储装置10a1至10an;第二组包括主机CPU 20b和与主机CPU 20b相对应的多个数据存储装置10b1至10bn;第三组包括主机CPU 20c和与主机CPU 20c相对应的多个数据存储装置10c1至10cn。
存储系统1中的每个可以指在AFA环境下操作的存储系统,并且可以如图1和图2所示的来实施,但是实施例不限于此。
参照图1,主机CPU 20可以执行与联接到主机CPU 20的多个数据存储装置10a1至10an的通信,并且可以同时向多个数据存储装置10a1至10an传输包括各种控制命令的信息并且接收从多个数据存储装置10a1至10an传输的信息。
在实施例中,主机CPU 20可以被实施为执行以下操作:监测多个数据存储装置10a1至10an中的每一个的编程-擦除(PE)循环次数,并且基于PE循环次数来改变存储器模式或将多个数据存储装置10a1至10an之中的特定数据存储装置中存储的数据移动到另一数据存储装置中。因此,数据存储装置10a1至10an可以将其诸如PE循环次数的寿命信息传送到主机CPU 20。例如,当特定数据存储装置是数据存储装置10a1时,另一数据存储装置可以是数据存储装置10a2至10an中的一个。
在图2中,多个数据存储装置10a1至10an、10b1至10bn以及10c1至10cn可以将其诸如PE循环的寿命信息分别传送到主机CPU 20a、20b和20c。例如,当特定数据存储装置是数据存储装置10a1时,另一数据存储装置可以是数据存储装置10a2至10an、10b1至10bn以及10c1至10cn中的一个。
返回参照图1,主机CPU 20可以根据多个数据存储装置10a1至10an中的每一个的PE循环次数,来确定是否使用多个数据存储装置10a1至10an中的每一个作为用于冷数据存储的数据存储装置(下文中称为冷数据存储装置)。
例如,主机CPU 20可以传输切换命令,以将多个数据存储装置10a1至10an之中的、PE循环次数等于或大于参考值的数据存储装置切换到仅用于存储冷数据的冷数据存储装置。即,当数据存储装置的PE循环次数等于或大于参考值时,将该数据存储装置用作冷数据存储装置。
当向多个数据存储装置10a1至10an中的每一个发送写入请求时,主机CPU 20可以将数据类型标识信息与写入数据一起传输到多个数据存储装置10a1至10an中的每一个。数据类型标识信息可以包括用于识别原始数据、复制数据和擦除编码数据中的至少一个的信息。数据存储装置10a1至10an中的每一个可以存储从主机CPU 20接收到的数据类型标识信息,并且使用数据类型标识信息来将写入数据分类为热数据/暖数据和冷数据。例如,可以将原始数据称为热数据或暖数据,并且可以将复制数据和擦除编码数据称为冷数据。稍后将提供对此的详细描述。
根据多个数据存储装置10a1至10an中的每一个中包括的非易失性存储器装置(参见图3的100)的PE循环次数,多个数据存储装置10a1至10an可以改变存储器模式;根据非易失性存储器装置100中存储的数据的数据类型和写入数据的数据类型来确定数据存储位置;以及将非易失性存储器装置100中存储的数据和写入数据存储在所确定的数据存储位置中。多个数据存储装置10a1至10an中的每一个可以是固态驱动器(SSD)。
当主机CPU 20提供数据移动命令时,多个数据存储装置10a1至10an中的每一个可以检查数据的数据类型标识信息,然后基于所检查的数据类型标识信息,可以将非易失性存储器装置100中存储的用户数据之中的第二类型数据移动到该非易失性存储器装置100的第二存储器模式区域或另一数据存储装置中。数据类型标识信息可以包括用于识别原始数据、复制数据和擦除编码数据中的至少一个的信息。第二类型数据可以是冷数据。例如,响应于数据移动命令,可以基于数据类型标识信息来将第二类型数据从数据存储装置10a移动到图1中的数据存储装置10a2至10an中的一个或图2中的数据存储装置10a2至10an、10b1至10bn和10c1至10cn中的一个中。在另一示例中,响应于数据移动命令,可以基于数据类型标识信息,来在第二类型数据当前所存储的非易失性存储器装置100内的存储器模式区域之间移动第二类型数据。
当非易失性存储器装置100包括第一存储器模式区域和第二存储器模式区域时,第一存储器模式区域可以是N位NAND单元区域,并且第二存储器模式区域可以是(N+1)位NAND单元区域。例如,当第一存储器模式区域是多层单元(MLC)模式存储器区域或三层单元(TLC)模式存储器区域时,第二存储器模式区域可以是四层单元(QLC)模式存储器区域。稍后将提供对此的详细描述。
多个数据存储装置10a1至10an中的每一个可以将包括其PE循环信息的寿命指示符传输到主机CPU 20。
多个数据存储装置10a1至10an中的每一个可以支持高速PCI对等式(PCIe P2P)通信。多个数据存储装置10a1至10an可以使用PCIe P2P通信,来在多个数据存储装置10a1至10an之间移动在它们的非易失性存储器装置100中存储的数据。
可以将主机CPU 20和多个数据存储装置10a1至10an的上述操作应用于图2所示的多个组中的每一组。
图3是示出根据本公开的实施例的数据存储装置10的示图。数据存储装置10可以包括非易失性存储器装置100和控制器200。数据存储装置10可以是SSD。图3所示的数据存储装置10可以对应于图1和图2所示的多个数据存储装置中的任意一个。
当非易失性存储器装置100的PE循环次数等于或大于参考值时,控制器200可以将该非易失性存储器装置100切换到冷数据存储装置。
例如,当非易失性存储器装置100的PE循环次数等于或大于参考值时,控制器200可以将用于将该非易失性存储器装置100切换到冷数据存储装置的请求传输到相应的主机CPU。当从相应的主机CPU接收到批准请求的回复时,控制器200可以将该非易失性存储器装置100切换到冷数据存储装置。
图4是示出根据实施例的切换存储器模式的方法的示图。将参照图3所示的数据存储装置10来描述切换方法。
参照图4,当数据存储装置10处于拆箱(Fresh-Out-of-Box,FOB)状态时,数据存储装置10可以处于MLC模式或TLC模式以存储所有热数据、暖数据和冷数据,并且当PE循环次数等于或大于参考值时,可以将数据存储装置10切换到QLC模式以仅存储冷数据。
在当PE循环次数等于或大于参考值时执行的数据重排中,控制器200可以将作为当前数据存储装置的数据存储装置10中的非易失性存储器装置100中存储的用户数据之中的第一类型数据移动到另一外部数据存储装置中,并且将用户数据之中的、在非易失性存储器装置100中的第一存储器模式区域中存储的第二类型数据移动到非易失性存储器装置100的第二存储器模式区域中。
例如,在当前数据存储装置是图1和图2的SSD 10a1时,另一外部数据存储装置可以是图1中的SSD 10a2至10an中的任意一个或图2中的SSD 10a2至10an、10b1至10bn和10c1至10cn中的任意一个。在该示例中,另一外部数据存储装置是指除当前数据存储装置以外的数据存储装置中的一个,其中在当前数据存储装置中存储有第一类型数据。
数据重排可以包括移动非易失性存储器装置100中存储的数据的任何情况,诸如垃圾收集(GC)、读取回收、来自主机CPU 20的数据移动命令等。
第一类型数据可以是热数据或暖数据,并且第二类型数据可以是冷数据。第一存储器模式区域可以是N位NAND单元区域,并且第二存储器模式区域可以是(N+1)位NAND单元区域。例如,第一存储器模式区域可以是MLC模式存储器区域或TLC模式存储器区域,并且第二存储器模式区域可以是QLC模式存储器区域。控制器200还可以在后台模式下自动地移动冷数据。
例如,可以根据SLC模式、MLC模式、TLC模式和QLC模式来改变NAND单元的PE循环。可以按QLC模式、TLC模式、MLC模式和SLC模式的顺序来缩短NAND单元的编程时间。当NAND单元的PE循环次数增加时,可能增加关于读取干扰的影响,因此需要将NAND单元中存储的数据快速地移动到另一NAND单元中。
当在AFA下存储数据时,原始数据01和02以及原始数据01和02的复制数据C1、C2和C3可以分布并存储在多个数据存储装置中,例如,可以如图6所示的分布并存储在SSD 0、SSD 1和SSD 2中,或者原始数据01-1、01-2、01-3和01-4以及擦除编码数据E1可以分布并存储在数据存储装置中,例如,可以如图7所示的分布并存储在SSD 0、SSD1和SSD 2中。例如,原始数据和复制数据(或擦除编码数据)可以分布并存储在数据存储装置中,例如,可以分布并存储在图1中所示的联接到相同主机CPU 20的SSD 10a1至10an中。在另一示例中,原始数据和复制数据(或擦除编码数据)可以分布并存储在数据存储装置中,例如,可以分布并存储在图2中所示的分别联接到不同主机CPU 20a、20b和20c的SSD 10a1、10b1和10c1中。
原始数据01和02可以各自是完整的原始数据,原始数据01-1、01-2、01-3和01-4可以各自是完整的原始数据的一部分,例如可以是通过根据多个簇来划分完整的原始数据而获得的数据。因此,收集所有的原始数据01-1、01-2、01-3和01-4来形成完整的原始数据。擦除编码数据E1表示用于数据恢复而编码的备用数据。
上述数据之中的擦除编码数据用于数据恢复,并且因为除非发生数据错误否则不会读取擦除编码数据,所以擦除编码数据具有冷数据特性。因为复制数据的读取也少于原始数据,所以复制数据也具有冷数据特性。因此,在本公开中,将复制数据和擦除编码数据分类为冷数据。利用这种特性,将用于识别原始数据、复制数据或擦除编码数据的信息用作数据类型标识信息。例如,将原始数据称为热数据或暖数据,并且将复制数据和擦除编码数据称为冷数据。
控制器200可以根据写入数据的数据类型,将写入数据写入第一存储器模式区域和第二存储器模式区域中的一个中。第一存储器模式区域可以是MLC模式存储器区域或TLC模式存储器区域,并且第二存储器模式区域可以是QLC模式存储器区域。
例如,当确定写入数据是热数据或暖数据时,控制器200可以控制将写入数据存储在MLC模式存储器区域或TLC模式存储器区域中,并且当确定写入数据是冷数据时,控制将写入数据存储在QLC模式存储器区域中。
控制器200可以将非易失性存储器装置100的冷数据存储空间与总数据存储空间的比率传输到主机CPU 20。例如,控制器200可以将在QLC模式下使用的空间与总数据存储空间的比率的信息或TLC/MLC模式存储器区域与QLC模式存储器区域的比率的信息传输到主机CPU20。根据诸如操作员的用户的需求,可以应用各种方法来传输非易失性存储器装置100的冷数据存储空间与总数据存储空间的比率。例如,控制器200可以将非易失性存储器装置100的冷数据存储空间与总数据存储空间的比率实时地传输到主机CPU 20,或者可以根据主机CPU20的请求来将该比率传输到主机CPU 20。
非易失性存储器装置100可以存储用户数据和包括与用户数据相匹配的数据类型标识信息的元数据。
参照图5,非易失性存储器装置100可以包括存储用户数据的用户区域和存储除用户数据以外的诸如元数据、ECC数据等的数据的备用区域。
可以将用户数据存储在用户区域中,并且可以将包括数据类型标识信息的元数据存储在备用区域中。数据类型标识信息可以包括用于识别原始数据、复制数据和擦除编码数据之中的至少一个的信息。
控制器200可以包括主机接口210、处理器220、存储器230和存储器接口240,并且稍后将提供对此的详细描述。
图3是示出根据实施例的数据存储装置的配置的示图。稍后将描述的数据存储装置和数据存储装置中的元件具有与上述相同的元件和功能,因此将省略对其的详细描述。
参照图3,数据存储装置10可以包括控制器200和非易失性存储器装置100。数据存储装置10可以是SSD,但是不限于此。
如上所述,当PE循环次数等于或大于参考值时,控制器200可以控制非易失性存储器装置100以切换到冷数据存储装置。
在当PE循环次数等于或大于参考值时执行的数据重排中,控制器200可以将用户数据之中的第一类型数据移动到另一数据存储装置中。例如,在图1中可以将第一类型数据从数据存储装置10a1移动到数据存储装置10a2中,或者在图2中可以将第一类型数据从数据存储装置10a1移动到数据存储装置10b1中。控制器200可以将用户数据之中的、在非易失性存储器装置100的第一存储器模式区域中存储的第二类型数据移动到非易失性存储器装置100的第二存储器模式区域中。在数据写入请求中,控制器200可以根据写入数据的数据类型,来将写入数据写入第一存储器模式区域和第二存储器模式区域中的一个中。
第一类型数据可以是热数据或暖数据,并且第二类型数据可以是冷数据。第一存储器模式区域可以是MLC模式存储器区域或TLC模式存储器区域,并且第二存储器模式区域可以是QLC模式存储器区域。
控制器200可以将非易失性存储器装置100的冷数据存储空间与总数据存储空间的比率传输到主机CPU 20。
当非易失性存储器装置100的PE循环次数等于或大于参考值时,控制器200可以将用于将非易失性存储器装置100切换到冷数据存储装置的请求传输到主机CPU 20,并且当从主机CPU 20接收到批准请求的回复时,将非易失性存储器装置100切换到冷数据存储装置。
非易失性存储器装置100可以存储用户数据和包括与用户数据相匹配的数据类型标识信息的元数据,并且可以在控制器200的控制下将非易失性存储器装置100切换到冷数据存储装置。
数据类型标识信息可以包括用于识别原始数据、复制数据和擦除编码数据中的至少一个的信息。作为与写入请求中的写入数据一起从主机CPU 20传输的信息,数据类型标识信息可以存储在非易失性存储器装置100的备用区域(参见图5的备用区域)中,并且当控制器200确定数据移动或数据存储位置时,控制器200可参考数据类型标识信息。
参照图3,数据存储装置10可以存储待由诸如移动电话、MP3播放器、膝上型计算机、台式计算机、游戏机、电视(TV)、车载信息娱乐系统等的主机(未示出)访问的数据。数据存储装置10可以称为存储器系统。
根据联接到与主机相对应的主机CPU的接口协议,数据存储装置10可以被配置为各种类型的存储装置中的任意一种。例如,数据存储装置10可以被配置为SSD,MMC、eMMC、RS-MMC或微型MMC形式的多媒体卡,SD、迷你SD或微型SD形式的安全数字卡,通用串行总线(USB)存储装置,通用闪存(UFS)装置,个人计算机存储卡国际协会(PCMCIA)卡型存储装置,外围组件互连(PCI)卡型存储装置,高速PCI(PCI-E)卡型存储装置,紧凑型闪存(CF)卡,智能媒体卡,记忆棒等。
数据存储装置10可以被制造为各种类型的封装中的任意一种。例如,数据存储装置10可以被制造为堆叠封装(POP)、系统级封装(SIP)、片上系统(SOC)、多芯片封装(MCP)、板上芯片(COB)、晶圆级制造封装(WFP)或晶圆级堆叠封装(WSP)。
非易失性存储器装置100可以作为数据存储装置10的存储介质来操作。根据非易失性存储器装置100中的存储器单元的类型,非易失性存储器装置100可以包括诸如以下的各种类型的非易失性存储器装置中的任意一种:NAND闪速存储器装置、NOR闪速存储器装置、使用铁电电容器的铁电随机存取存储器(FRAM)、使用隧穿磁阻(TMR)层的磁性随机存取存储器(MRAM)、使用硫族化物合金的相变随机存取存储器(PRAM)、使用过渡金属化合物的电阻式随机存取存储器(ReRAM)等。
如图14所示,非易失性存储器装置100可以包括存储器单元阵列110,该存储器单元阵列110包括布置在多个字线WL1至WLm和多个位线BL1至BLn交叉的区域中的多个存储器单元MC。例如,存储器单元阵列110中的存储器单元MC中的每一个可以是待存储单个位数据(例如,1位数据)的单层单元(SLC)、待存储2位或更多位数据的多层单元(MLC)、待存储3位数据的三层单元(TLC)和待存储4位数据的四层单元(QLC)。存储器单元阵列100可以包括SLC、MLC、TLC和QLC之中的至少一个。存储器单元阵列110可以包括以二维(2D)水平结构布置的存储器单元或以三维(3D)垂直结构布置的存储器单元。
返回参照图3,控制器200可以通过驱动加载到存储器230中的固件或软件来控制数据存储装置10的全部操作。控制器200可以解码并驱动代码类型指令或算法,诸如固件或软件。控制器200可以利用硬件或硬件与软件的组合来实施。
如上所述,控制器200可以包括主机接口210、处理器220、存储器230和存储器接口240。尽管在图3中未示出,但是控制器200可以进一步包括错误校正码(ECC)引擎,ECC引擎通过对由主机提供的写入数据进行ECC编码来生成奇偶校验数据,并且使用该奇偶校验数据对从非易失性存储器装置100读出的读取数据进行ECC解码。ECC引擎可以设置在存储器接口240的内部或外部。
主机接口210可以根据主机的协议来执行主机和数据存储装置10之间的接口连接。例如,主机接口210可以使用USB协议、UFS协议、MMC协议、并行高级技术附件(PATA)协议、串行高级技术附件(SATA)协议、小型计算机系统接口(SCSI)协议、串列SCSI(SAS)协议、PCI协议和PCI-E协议中的任意一种与主机通信。
处理器220可以被配置为微控制单元(MCU)和/或中央处理单元(CPU)。处理器220可以处理从主机传输的请求。为了处理从主机传输的请求,处理器220可以驱动加载到存储器230中的代码类型指令或算法(例如,固件),并且控制诸如主机接口210、存储器230和存储器接口240的内部功能块以及非易失性存储器装置100。
处理器220可以基于从主机传输的请求来生成用于控制非易失性存储器装置100的操作的控制信号,并且通过存储器接口240将所生成的控制信号提供到非易失性存储器装置100。
存储器230可以被配置为诸如动态随机存取存储器(DRAM)或静态随机存取存储器(SRAM)的随机存取存储器。存储器230可以存储由处理器220驱动的固件。存储器230还可以存储用于驱动固件的数据(例如,元数据)。例如,存储器230可以作为处理器220的工作存储器来操作。尽管在图3中未示出,但是控制器200可以进一步包括布置为靠近处理器220的处理器专用存储器,因此可以将存储器230中存储的固件和元数据加载到处理器专用存储器中。
存储器230可以被配置为包括数据缓冲器,数据缓冲器被配置为临时存储待从主机传输到非易失性存储器装置100的写入数据或待从非易失性存储器装置100传输到主机的读取数据。例如,存储器230可以作为处理器220的缓冲存储器来操作。
在图3中已经示出了存储器230设置在控制器200的内部,但是存储器230也可以设置在控制器200的外部。
存储器接口240可以根据处理器220的控制来控制非易失性存储器装置100。当非易失性存储器装置100由NAND闪速存储器配置时,存储器接口240可以称为闪存控制顶层(flash control top,FCT)或闪存接口层(FIL)。存储器接口240可以将由处理器220生成的控制信号传输到非易失性存储器装置100。控制信号可以包括用于控制非易失性存储器装置100的操作的命令、地址、操作控制信号等。操作控制信号可以包括例如芯片使能信号、命令锁存使能信号、地址锁存使能信号、写入使能信号、读取使能信号、数据选通信号等。存储器接口240可以将写入数据传输到非易失性存储器装置100或从非易失性存储器装置100接收读取数据。
存储器接口240和非易失性存储器装置100可以通过多个通道CH1至CHn联接。存储器接口240可以通过多个通道CH1至CHn将诸如命令、地址、操作控制信号和数据(例如,写入数据)的信号传输到非易失性存储器装置100。存储器接口240可以通过多个通道CH1至CHn从非易失性存储器装置100接收状态信号、数据(例如,读取数据)等。状态信号可以表示非易失性存储器装置100的状态,例如,非易失性存储器装置100是处于就绪状态还是忙碌状态。
图8是示出根据实施例的执行数据重排的方法的流程图。
在S801,数据存储装置检查PE循环次数,并且将关于PE循环次数的信息传送到主机CPU。
在S802,主机CPU确定PE循环次数是否等于或大于参考值。
如果确定PE循环次数等于或大于参考值(是),则在S803,将数据存储装置的存储器模式切换到冷数据存储装置。另一方面,如果确定PE循环次数小于参考值(否),则进程返回到S801。
在S804,数据存储装置根据数据存储装置中的非易失性存储器装置中存储的数据的数据类型和由主机提供的写入数据的数据类型来确定数据存储位置。
在S805,数据存储装置将非易失性存储器装置中存储的数据和写入数据存储在所确定的数据存储位置中。当非易失性存储器装置中存储的数据或写入数据是第一类型数据,即热数据或暖数据时,将该数据或写入数据移动到或存储在另一数据存储装置中。当非易失性存储器装置中存储的数据或写入数据是第二类型数据,即冷数据时,将该数据或写入数据移动到或存储在非易失性存储器装置的、用于存储冷数据的第二存储器模式区域中。
可以根据由主机CPU提供的数据移动命令或根据数据存储装置的请求和主机CPU的批准,来切换数据存储装置的存储器模式。然而,实施例不限于此。
图9是示出根据实施例的包括SSD的数据处理系统2000的框图。参照图9,数据处理系统2000可以包括主机CPU 2100和SSD 2200。
SSD 2200可以包括控制器2210、缓冲存储器装置2220、非易失性存储器装置2231至223n、电源2240、信号连接器2250和电源连接器2260。
控制器2210可以控制SSD 2200的全部操作。
缓冲存储器装置2220可以临时存储待存储在非易失性存储器装置2231至223n中的写入数据。进一步地,缓冲存储器装置2220可以临时存储从非易失性存储器装置2231至223n读出的读取数据。根据控制器2210的控制,可以将临时存储在缓冲存储器装置2220中的数据传输到主机CPU 2100或非易失性存储器装置2231至223n。
非易失性存储器装置2231至223n可以用作SSD 2200的存储介质。非易失性存储器装置2231至223n可以分别通过多个通道CH1至CHn与控制器2210联接。一个或多个非易失性存储器装置可以联接到一个通道。联接到相同通道的非易失性存储器装置可以联接到相同的信号总线和数据总线。
电源2240可以将通过电源连接器2260输入的电力PWR提供到SSD2200的内部。电源2240可以包括辅助电源2241。辅助电源2241可以供应电力,以当发生突然断电(SPO)时正确地关闭SSD 2200。辅助电源2241可以包括具有大容量的电容器以充电电力PWR。
控制器2210可以通过信号连接器2250来与主机CPU 2100交换信号SGL。信号SGL可以包括命令、地址、数据等。根据主机CPU 2100和SSD 2200之间的接口方案,信号连接器2250可以被配置为各种类型的连接器中的任意一种。
图10是示出根据实施例的图9所示的控制器2210的框图。参照图10,控制器2210可以包括主机接口2211、控制组件2212、随机存取存储器2213、错误校正码(ECC)组件2214和存储器接口2215。
主机接口2211可以根据主机CPU 2100的协议来提供主机CPU2100和SSD 2200之间的接口连接。例如,主机接口2211可以使用SD、USB、MMC、嵌入式MMC(eMMC)、PCMCIA、PATA、SATA、SCSI、SAS、PCI、PCI-E和UFS协议中的任意一种与主机CPU 2100通信。另外,主机接口2211可以执行磁盘仿真功能,以支持主机CPU2100将SSD 2200识别为例如硬盘驱动器(HDD)的通用数据存储装置。
控制组件2212可以分析和处理从主机CPU 2100输入的信号SGL。控制组件2212可以根据用于驱动SSD 2200的固件或软件来控制内部功能块的操作。随机存取存储器2213可以用作用于驱动这种固件或软件的工作存储器。
ECC组件2214可以生成待传输到非易失性存储器装置2231至223n的写入数据的奇偶校验数据。可以将所生成的奇偶校验数据和写入数据一起存储在非易失性存储器装置2231至223n中。ECC组件2214可以基于奇偶校验数据来检测从非易失性存储器装置2231至223n读出的数据的错误。当检测到的错误在可校正范围内时,ECC组件2214可以校正检测到的错误。
存储器接口2215可以根据控制组件2212的控制,将诸如命令和地址的控制信号提供到非易失性存储器装置2231至223n。存储器接口2215可以根据控制组件2212的控制,与非易失性存储器装置2231至223n交换数据。例如,存储器接口2215可以将在缓冲存储器装置2220中存储的数据提供到非易失性存储器装置2231至223n或将从非易失性存储器装置2231至223n读出的数据提供到缓冲存储器装置2220。
图11是示出根据实施例的包括数据存储装置的数据处理系统3000的示图。参照图11,数据处理系统3000可以包括主机CPU 3100和数据存储装置3200。
主机CPU 3100可以以诸如印刷电路板的板的形式配置。尽管在图11中未示出,但是主机3100可以包括用于执行主机CPU 3100的功能的内部功能块。
尽管已经在图11中示出了主机CPU 3100联接到单个数据存储装置3200,但是主机CPU 3100也可以如图1和图2所示的存储系统中一样地联接到多个数据存储装置。
主机CPU 3100可以包括诸如插座、插槽或连接器的连接端子3110。数据存储装置3200可以安装在连接端子3110上。
数据存储装置3200可以以诸如印刷电路板(PCB)的板的形式配置。数据存储装置3200可以指存储器模块或存储卡。数据存储装置3200可以包括控制器3210、缓冲存储器装置3220、非易失性存储器装置3231和3232、电源管理集成电路(PMIC)3240和连接端子3250。
控制器3210可以控制数据存储装置3200的全部操作。控制器3210可以以与图10所示的控制器2210相同的方式配置。
缓冲存储器装置3220可以临时存储待存储在非易失性存储器装置3231和3232中的写入数据。进一步地,缓冲存储器装置3220可以临时存储从非易失性存储器装置3231和3232读出的数据。根据控制器3210的控制,可以将临时存储在缓冲存储器装置3220中的数据传输到主机CPU 3100或非易失性存储器装置3231和3232。
非易失性存储器装置3231和3232可以用作数据存储装置3200的存储介质。
PMIC 3240可以将通过连接端子3250输入的电力提供到数据存储装置3200的内部。PMIC 3240可以根据控制器3210的控制来管理数据存储装置3200的电力。
连接端子3250可以联接到主机CPU 3100的连接端子3110。通过连接端子3110和3250,可以在主机CPU 3100和数据存储装置3200之间传送诸如命令、地址、数据等的信号以及电力。根据主机CPU 3100和数据存储装置3200之间的接口方案,连接端子3250可以被配置为各种类型中的任意一种。连接端子3250可以设置在数据存储装置3200的任意一侧上或设置在数据存储装置3200的任意一侧中。
图12是示出根据实施例的包括数据存储装置的数据处理系统4000的框图。参照图12,数据处理系统4000可以包括主机CPU 4100和数据存储装置4200。主机CPU 4100可以以诸如印刷电路板(PCB)的板的形式配置。尽管在图12中未示出,但是主机CPU 4100可以包括用于执行主机CPU 4100的功能的内部功能块。
数据存储装置4200可以以表面安装型封装的形式配置。数据存储装置4200可以通过焊球4250而安装在主机CPU 4100上。数据存储装置4200可以包括控制器4210、缓冲存储器装置4220和非易失性存储器装置4230。
控制器4210可以控制数据存储装置4200的全部操作。控制器4210可以以与图10所示的控制器2210相同的方式配置。
缓冲存储器装置4220可以临时存储待存储在非易失性存储器装置4230中的写入数据。进一步地,缓冲存储器装置4220可以临时存储从非易失性存储器装置4230读出的数据。根据控制器4210的控制,可以将临时存储在缓冲存储器装置4220中的数据传输到主机CPU 4100或非易失性存储器装置4230。
非易失性存储器装置4230可以用作数据存储装置4200的存储介质。
图13是示出根据实施例的包括数据存储装置的网络系统5000的示图。参照图13,网络系统5000可以包括通过网络5500彼此联接的服务器系统5300和多个客户端系统5410至5430。
服务器系统5300可以响应于来自多个客户端系统5410至5430的请求而服务数据。例如,服务器系统5300可以存储由多个客户端系统5410至5430提供的数据。在另一示例中,服务器系统5300可以将数据提供到多个客户端系统5410至5430。
服务器系统5300可以包括主机CPU 5100和数据存储装置5200。数据存储装置5200可以被配置为图3所示的数据存储装置10、图9所示的数据存储装置2200、图11所示的数据存储装置3200或图12所示的数据存储装置4200。
图14是示出根据实施例的数据存储装置中包括的非易失性存储器装置100的框图。参照图14,非易失性存储器装置100可以包括存储器单元阵列110、行解码器120、数据读取/写入块130、列解码器140、电压生成器150和控制逻辑160。
存储器单元阵列110可以包括布置在字线WL1至WLm和位线BL1至BLn彼此交叉的区域中的存储器单元MC。
行解码器120可以通过字线WL1至WLm与存储器单元阵列110联接。行解码器120可以根据控制逻辑160的控制进行操作。行解码器120可以对由外部装置(未示出)提供的地址进行解码。行解码器120可以基于解码结果来选择并驱动字线WL1至WLm中的一个或多个。例如,行解码器120可以将由电压生成器150生成的字线电压提供到字线WL1至WLm。
数据读取/写入块130可以通过位线BL1至BLn与存储器单元阵列110联接。数据读取/写入块130可以包括分别与位线BL1至BLn相对应的读取/写入电路RW1至RWn。数据读取/写入块130可以根据控制逻辑160的控制进行操作。数据读取/写入块130可以根据操作模式而作为写入驱动器或读出放大器来操作。例如,在写入操作中,数据读取/写入块130可以作为将由外部装置提供的数据存储在存储器单元阵列110中的写入驱动器来操作。在另一示例中,在读取操作中,数据读取/写入块130可以作为从存储器单元阵列110读出数据的读出放大器来操作。
列解码器140可以根据控制逻辑160的控制进行操作。列解码器140可以对由外部装置提供的地址进行解码。列解码器140可以基于解码结果,将数据输入/输出线(或数据输入/输出缓冲器)与数据读取/写入块130的、分别与位线BL1至BLn相对应的读取/写入电路RW1至RWn联接。
电压生成器150可以生成待在非易失性存储器装置100的内部操作中使用的电压。可以将由电压生成器150生成的电压施加到存储器单元阵列110中的存储器单元MC。例如,可以将在编程操作中生成的编程电压施加到联接到待执行编程操作的存储器单元的字线。在另一示例中,可以将在擦除操作中生成的擦除电压施加到待执行擦除操作的存储器单元的阱区。在又一示例中,可以将在读取操作中生成的读取电压施加到联接到待执行读取操作的存储器单元的字线。
控制逻辑160可以响应于由外部装置提供的控制信号而控制非易失性存储器装置100的全部操作。例如,控制逻辑160可以控制非易失性存储器装置100的操作,诸如非易失性存储器装置100的读取操作、写入操作和擦除操作。
本发明的上述实施例旨在说明而不是限制本发明。本领域技术人员根据本公开将认识到,各种替代方案和等同方案都是可能的。因此,本发明不受本文描述的任何实施例的限制且不限于本文描述的任何实施例。本发明也不限于任何特定类型的半导体装置。相反,本发明涵盖落入所附权利要求范围内的所有变型和修改。
Claims (19)
1.一种数据存储装置,包括:
非易失性存储器装置,存储用户数据和元数据,所述元数据包括与所述用户数据相匹配的数据类型标识信息;以及
控制器,当所述非易失性存储器装置的编程-擦除循环次数,即PE循环次数等于或大于参考值时,所述控制器控制所述非易失性存储器装置切换到仅用于存储冷数据的冷数据存储装置,
其中在将所述非易失性存储器装置切换到所述冷数据存储装置时,所述控制器将所述用户数据之中的第一类型数据移动到外部数据存储装置中,并且将所述用户数据之中的、存储在所述非易失性存储器装置的第一存储器模式区域中的第二类型数据移动到所述非易失性存储器装置的第二存储器模式区域中,并且
其中根据写入请求,所述控制器根据写入数据的类型将所述写入数据写入所述第一存储器模式区域和所述第二存储器模式区域中的一个中。
2.根据权利要求1所述的数据存储装置,其中所述第一类型数据是热数据或暖数据,并且所述第二类型数据是冷数据。
3.根据权利要求1所述的数据存储装置,其中所述第一存储器模式区域是包括存储N位数据的存储器单元的NAND单元区域,并且所述第二存储器模式区域是包括存储N+1位数据的存储器单元的NAND单元区域。
4.根据权利要求1所述的数据存储装置,其中所述控制器将所述非易失性存储器装置的冷数据存储空间与总数据存储空间的比率传输到主机中央处理单元,即主机CPU。
5.根据权利要求1所述的数据存储装置,其中当所述非易失性存储器装置的所述PE循环次数等于或大于所述参考值时,所述控制器将用于将所述非易失性存储器装置切换到所述冷数据存储装置的请求传输到主机中央处理单元,即主机CPU,并且当从所述主机CPU接收到批准所述请求的回复时,将所述非易失性存储器装置切换到所述冷数据存储装置。
6.根据权利要求1所述的数据存储装置,其中所述数据存储装置是固态装置,即SSD。
7.一种存储系统,包括:
主机中央处理单元,即主机CPU,根据多个数据存储装置中的每个的编程-擦除循环次数,即PE循环次数,来确定是否将所述多个数据存储装置中的每个使用为仅用于存储冷数据的冷数据存储装置;以及
所述多个数据存储装置,与所述主机CPU通信;根据所述数据存储装置中的每个中包括的非易失性存储器装置的所述PE循环次数,所述多个数据存储装置中的每个改变所述非易失性存储器装置的存储器模式;在改变所述存储器模式时,根据所述非易失性存储器装置中存储的数据的数据类型和写入数据的数据类型来确定数据存储位置;并且将所述非易失性存储器装置中存储的数据和所述写入数据存储在所确定的数据存储位置中。
8.根据权利要求7所述的存储系统,其中所述多个数据存储装置中的每个包括:
控制器,当所述非易失性存储器装置的所述PE循环次数等于或大于参考值时,所述控制器控制所述非易失性存储器装置切换到所述冷数据存储装置;以及
所述非易失性存储器装置,存储用户数据和元数据,所述元数据包括与所述用户数据相匹配的数据类型标识信息,并且
其中在将所述非易失性存储器装置切换到所述冷数据存储装置时,所述控制器将所述用户数据之中的第一类型数据移动到所述多个数据存储装置之中的另一数据存储装置中,并且将所述用户数据之中的、存储在所述非易失性存储器装置的第一存储器模式区域中的第二类型数据移动到所述非易失性存储器装置的第二存储器模式区域中,并且
其中根据写入请求,所述控制器根据所述写入数据的数据类型来将所述写入数据写入所述第一存储器模式区域和所述第二存储器模式区域中的一个中。
9.根据权利要求8所述的存储系统,其中当所述PE循环次数等于或大于所述参考值时,所述主机CPU将用于将所述非易失性存储器装置切换到所述冷数据存储装置的命令传输到包括所述非易失性存储器装置的数据存储装置。
10.根据权利要求8所述的存储系统,其中当所述非易失性存储器装置的所述PE循环次数等于或大于所述参考值时,所述控制器将用于将所述非易失性存储器装置切换到所述冷数据存储装置的请求传输到所述主机CPU,并且当从所述主机CPU接收到批准所述请求的回复时,将所述非易失性存储器装置切换到所述冷数据存储装置。
11.根据权利要求8所述的存储系统,其中所述第一类型数据是热数据或暖数据,并且所述第二类型数据是冷数据。
12.根据权利要求8所述的存储系统,其中所述第一存储器模式区域是包括存储N位数据的存储器单元的NAND单元区域,并且所述第二存储器模式区域是包括存储N+1位数据的存储器单元的NAND单元区域。
13.根据权利要求8所述的存储系统,其中所述控制器将所述非易失性存储器装置的冷数据存储空间与总数据存储空间的比率传输到所述主机CPU。
14.根据权利要求8所述的存储系统,其中所述数据存储装置是固态装置,即SSD。
15.根据权利要求8所述的存储系统,其中当从所述主机CPU接收到数据移动命令时,所述数据存储装置基于所述数据类型标识信息将所述第二类型数据移动到所述第二存储器模式区域或另一数据存储装置。
16.根据权利要求8所述的存储系统,其中所述主机CPU根据所述写入请求,将所述数据类型标识信息和所述写入数据一起传输到所述多个数据存储装置中的每个。
17.根据权利要求7所述的存储系统,其中所述多个数据存储装置中的每个将寿命指示符传输到所述主机CPU,所述寿命指示符包括所述数据存储装置的PE循环信息。
18.根据权利要求7所述的存储系统,其中所述多个数据存储装置中的每个支持高速PCI对等式通信,即PCIe P2P通信,并且
所述多个数据存储装置以PCIe P2P方案,使所述多个数据存储装置中包括的非易失性存储器装置中存储的数据彼此移动。
19.一种操作存储系统的方法,所述存储系统包括主机CPU和多个数据存储装置,所述方法包括:
检查所述多个数据存储装置中的每个的编程-擦除循环次数,即PE循环次数;
确定所述PE循环次数是否等于或大于参考值;
将所述PE循环次数等于或大于所述参考值的数据存储装置改变为仅存储冷数据的冷数据存储装置;
根据所述数据存储装置的非易失性存储器装置中存储的数据的数据类型和由所述主机CPU提供的写入数据的数据类型来确定数据存储位置;并且
将所述非易失性存储器装置中存储的数据和所述写入数据存储在所确定的数据存储位置中。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190143315A KR20210056625A (ko) | 2019-11-11 | 2019-11-11 | 데이터 저장 장치 및 이를 이용한 스토리지 시스템 |
KR10-2019-0143315 | 2019-11-11 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112783429A true CN112783429A (zh) | 2021-05-11 |
Family
ID=75750142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010671635.XA Withdrawn CN112783429A (zh) | 2019-11-11 | 2020-07-14 | 数据存储装置、使用其的存储系统及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11385834B2 (zh) |
KR (1) | KR20210056625A (zh) |
CN (1) | CN112783429A (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11709617B2 (en) * | 2020-08-19 | 2023-07-25 | Micron Technology, Inc. | Multi-stage memory device performance notification |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8266503B2 (en) * | 2009-03-13 | 2012-09-11 | Fusion-Io | Apparatus, system, and method for using multi-level cell storage in a single-level cell mode |
US20120317337A1 (en) * | 2011-06-09 | 2012-12-13 | Microsoft Corporation | Managing data placement on flash-based storage by use |
KR101403922B1 (ko) | 2011-08-25 | 2014-06-09 | 인하대학교 산학협력단 | 접근 빈도에 따라 데이터를 할당하는 저장장치 및 저장방법 |
US8996781B2 (en) * | 2012-11-06 | 2015-03-31 | OCZ Storage Solutions Inc. | Integrated storage/processing devices, systems and methods for performing big data analytics |
KR101480424B1 (ko) | 2013-03-06 | 2015-01-13 | 서울시립대학교 산학협력단 | 하이브리드 플래시 메모리의 성능과 수명 최적화 장치 및 방법 |
US10228862B2 (en) * | 2017-03-15 | 2019-03-12 | Western Digital Technologies, Inc. | Capacity-aware wear leveling in solid-state storage devices |
US10372342B2 (en) * | 2017-10-02 | 2019-08-06 | Western Digital Technologies, Inc. | Multi-level cell solid state device and method for transferring data between a host and the multi-level cell solid state device |
US10474361B1 (en) * | 2018-05-02 | 2019-11-12 | Seagate Technology Llc | Consolidating non-volatile memory across multiple storage devices for front end processing |
US11036411B2 (en) * | 2019-06-24 | 2021-06-15 | Western Digital Technologies, Inc. | Yield improvement through block budget optimization by using a transient pool of multi-level blocks |
US11347403B2 (en) * | 2019-09-04 | 2022-05-31 | Seagate Technolagy LLC | Extending the life of a solid state drive by using MLC flash blocks in SLC mode |
US20210089385A1 (en) * | 2019-09-24 | 2021-03-25 | Micron Technology, Inc. | Imprint recovery management for memory systems |
-
2019
- 2019-11-11 KR KR1020190143315A patent/KR20210056625A/ko not_active Application Discontinuation
-
2020
- 2020-06-09 US US16/897,017 patent/US11385834B2/en active Active
- 2020-07-14 CN CN202010671635.XA patent/CN112783429A/zh not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
US20210141565A1 (en) | 2021-05-13 |
US11385834B2 (en) | 2022-07-12 |
KR20210056625A (ko) | 2021-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10664409B2 (en) | Data storage apparatus utilizing sequential map entry for responding to read request and operating method thereof | |
CN111506516B (zh) | 数据存储装置及数据存储装置的操作方法 | |
CN111124273B (zh) | 数据存储装置及数据存储装置的操作方法 | |
CN109992202B (zh) | 数据存储设备、其操作方法以及包括其的数据处理系统 | |
US20200218653A1 (en) | Controller, data storage device, and operating method thereof | |
US20200117559A1 (en) | Data storage device and operating method thereof | |
CN111916140B (zh) | 控制器及其操作方法以及包括控制器的存储器系统 | |
US11163696B2 (en) | Controller, memory system and operating method thereof for controlling a non-volatile memory device during a sync-up operation | |
CN111752852A (zh) | 数据存储装置及数据存储装置的操作方法 | |
CN113704138A (zh) | 存储装置及其操作方法 | |
CN112286443A (zh) | 控制器、存储器系统及其操作方法 | |
US20200310981A1 (en) | Controller, memory system and operating method thereof | |
CN110119326B (zh) | 数据存储装置及其操作方法 | |
CN114764396A (zh) | 数据存储装置及其操作方法 | |
CN113806241A (zh) | 存储装置及其操作方法 | |
KR102645786B1 (ko) | 컨트롤러, 메모리 시스템 및 그것의 동작 방법 | |
CN112988045A (zh) | 数据存储装置及其操作方法 | |
US11385834B2 (en) | Data storage device, storage system using the same, and method of operating the same | |
CN110795366B (zh) | 数据存储装置及数据存储装置的操作方法 | |
US11157401B2 (en) | Data storage device and operating method thereof performing a block scan operation for checking for valid page counts | |
CN109840214B (zh) | 数据存储装置及其操作方法 | |
CN113805793A (zh) | 存储装置及其操作方法 | |
CN113010445A (zh) | 数据存储装置、其操作方法及使用其的存储系统 | |
US11537514B2 (en) | Data storage device and operating method thereof | |
US10572155B2 (en) | Data storage device and operating method thereof |
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 | ||
WW01 | Invention patent application withdrawn after publication | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210511 |