CN113900583A - 数据存储装置及其操作方法 - Google Patents
数据存储装置及其操作方法 Download PDFInfo
- Publication number
- CN113900583A CN113900583A CN202110214529.3A CN202110214529A CN113900583A CN 113900583 A CN113900583 A CN 113900583A CN 202110214529 A CN202110214529 A CN 202110214529A CN 113900583 A CN113900583 A CN 113900583A
- Authority
- CN
- China
- Prior art keywords
- data
- memory device
- storage device
- zone
- area
- 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
- 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/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/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
-
- 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/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/0292—User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
-
- 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/0891—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using clearing, invalidating or resetting means
-
- 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/0893—Caches characterised by their organisation or structure
- G06F12/0897—Caches characterised by their organisation or structure with two or more cache hierarchy levels
-
- 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/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/065—Replication mechanisms
-
- 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/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
-
- 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/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid 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/10—Providing a specific technical effect
- G06F2212/1016—Performance improvement
- G06F2212/1024—Latency reduction
-
- 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/7207—Details relating to flash memory management management of metadata or control data
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 Of A Hierarchy Structure (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种数据存储装置包括:第一存储器装置,存储第一数据;第二存储器装置,包括存储第二数据的第一区、存储第三数据的第二区和存储第四数据的第三区;存储装置;以及控制器,与第一存储器装置、第二存储器装置和存储装置通信,并且从主机接收一个或多个请求并且响应于来自主机的一个或多个请求控制来自和去往第一存储器装置、第二存储器装置和存储装置的数据的输入和输出。控制器进一步将从第一存储器装置读取的第一数据的一部分复制到第一区,将从第一区读取的第二数据的一部分复制到第二区,将从第二区读取的第三数据的一部分复制到第三区,以及将在第一存储器装置和第二存储器装置中存储的数据之中被读取超过设定次数的数据存储在第三区中。
Description
相关申请的交叉引用
本专利文件要求于2020年7月6日在韩国知识产权局提交的韩国专利申请号为10-2020-0082960的优先权,其通过引用整体并入本文。
技术领域
在本专利文件中公开的技术和实施方案一般涉及半导体集成装置,包括数据存储装置及其操作方法。
背景技术
计算装置可以响应于主机的请求从存储器读取数据或将数据写入存储器中,或者可以使用存储器中存储的数据来处理命令。
高速缓存存储器可用于减少计算装置访问存储器中存储的信息的时间。高速缓存存储器可以是存储相对频繁使用或预期频繁使用的指令或数据的副本的高速存储器。
多级高速缓存可以被配置为提供分级(hierarchical)访问速度以进一步减轻可能由于处理器和存储器之间的速度差而引起的时间延迟。
发明内容
在本公开的实施例中,一种数据存储装置可以包括:第一存储器装置,存储第一数据;第二存储器装置,包括存储第二数据的第一区、存储第三数据的第二区和存储第四数据的第三区;存储装置;以及控制器,与第一存储器装置、第二存储器装置和存储装置通信,并且被配置为从主机接收一个或多个请求,并且响应于来自主机的一个或多个请求,控制来自第一存储器装置、第二存储器装置和存储装置的数据的输入以及去往第一存储器装置、第二存储器装置和存储装置的数据的输出。控制器进一步被配置为将从第一存储器装置读取的第一数据的一部分复制到第一区,将从第一区读取的第二数据的一部分复制到第二区,将从第二区读取的第三数据的一部分复制到第三区,并且将在第一存储器装置和第二存储器装置中存储的数据之中被读取超过设定次数的数据存储在第三区中。
在本公开的实施例中,提供一种数据存储装置的操作方法。该方法由数据存储装置执行并且包括:从主机接收一个或多个请求以从第一存储器装置、第二存储器装置和存储装置中的一个读取数据,第二存储器装置包括第一区、第二区和第三区;基于一个或多个请求,从第一存储器装置、第二存储器装置或存储装置读取数据;响应于来自主机的每个请求,向主机提供从第一存储器装置、第二存储器装置或存储装置读取的数据;以及将已经被读取超过设定次数的频繁读取的数据存储在第三区中。
将在下文更详细地描述这些和其它特征、方面以及实施例。
附图说明
通过结合以下附图的详细描述,将更清楚地理解本公开的主题的上述和其它方面、特征和优点。
图1是示出基于所公开技术的实施例的数据存储装置的配置的示图。
图2是示出基于所公开技术的实施例的控制器的配置的示图。
图3是示出基于所公开技术的实施例的存储器管理器的配置的示图。
图4是说明基于所公开技术的实施例的数据存储装置的操作方法的流程图。
图5是说明基于所公开技术的实施例的数据存储装置的操作方法的简化图。
图6至图8是说明基于所公开技术的实施例的管理数据存储装置的容量的方法的流程图。
图9是示出基于所公开技术的实施例的数据存储系统的示图。
图10和图11是示出基于所公开技术的实施例的数据处理系统的示图。
图12是示出基于所公开技术的实施例的包括数据存储装置的网络系统的示图。
具体实施方式
将参照附图详细描述所公开技术的各个实施例。附图是各个实施例(和中间结构)的示意图。因此,由于例如制造工艺和/或公差而导致的图示的配置和形状的变化是可预期的。因此,所描述的实施例不应被解释为限于本文示出的特定配置和形状,而是可包括配置和形状中偏差。
尽管示出并描述了所公开技术的一些实施例,但是本领域普通技术人员将理解的是,可以进一步进行改变。
随着主机和处理装置变得更快并且存储器的存储容量增加,需要被配置为在处理器与存储器之间存储数据的存储器装置的有效操作策略。所公开技术的一些实施方案提供了一种数据存储装置,该数据存储装置可以控制数据存储装置的高速缓存空间以增加数据读取速度并提高数据存储装置的操作效率。
图1是示出基于所公开技术的实施例的数据存储装置10的配置的示图。
参照图1,根据实施例的数据存储装置10可以包括控制器110和存储装置120。
控制器110可以响应于主机(未示出)的请求来控制存储装置120。在实施例中,控制器110可以响应于来自主机的写入请求来控制数据被编程在存储装置120中。控制器110可以响应于来自主机的读取请求来读取被编程在存储装置120中的数据并且将读取的数据提供给主机。在实施例中,控制器110可以根据主机的请求使用主机提供的数据或存储装置120中存储的数据来执行操作,并且可以将作为操作结果而导出的输出数据提供给主机或将输出数据存储在存储装置120中。
在实施例中,控制器110可以利用处理器来实现,或者可以被实现为包括处理器,处理器被称为配置为处理对数据和指令的访问的功能块或控制逻辑。
控制器110可包括第一存储器装置(L1)210、第二存储器装置(L2)220和存储器管理器(MMU)20。
在实施例中,第一存储器装置210可以是第一级高速缓存存储器L1,其逻辑上和物理上的位置最靠近控制器110的处理器并且以第一速度操作。在实施例中,第一存储器装置210可以包括易失性存储器装置或非易失性存储器装置。
第二存储器装置220可以是以比第一速度慢的第二速度操作的第二级高速缓存存储器L2。在实施例中,第二存储器装置220可以包括易失性存储器装置或非易失性存储器装置。第二存储器装置220在逻辑上和物理上的位置可以比第一存储器装置210远离控制器110的处理器。在实施例中,第二存储器装置220可以位于第一存储器装置210和存储装置120之间。
存储装置120可以是以比第一速度慢的第三速度操作的盘装置。第三速度可以等于第二速度或者比第二速度更快或更慢。
存储装置120可以基于来自控制器110的控制信号来存储数据或输出所存储的数据。存储装置120可以被配置为易失性存储器装置和/或非易失性存储器装置。在实施例中,非易失性存储器装置可以是诸如以下的各种非易失性存储器装置中的任何一种:电可擦除可编程只读存储器(EEPROM)、NAND闪速存储器、NOR闪速存储器、相变随机存取存储器(PRAM)、电阻式RAM(ReRAM)、铁电RAM(FRAM)、自旋力矩转移磁性RAM(STT-MRAM)等。在实施例中,易失性存储器装置可以是诸如动态随机存取存储器(DRAM)或静态随机存取存储器(SRAM)的各种易失性存储器装置中的任何一种。
存储装置120可以包括多个管芯、多个芯片或多个封装。此外,存储装置120可以作为在一个存储器单元中存储一位数据的单层单元(SLC)或者在一个存储器单元中存储多位数据的多层单元(MLC)来操作。
如上所述,第一存储器装置210、第二存储器装置220和存储装置120可以被配置为具有关于离处理器的距离和/或速度的分级结构,并且控制器110的存储器管理器20可以管理待存储在第一存储器装置210、第二存储器装置220和存储装置120中的数据。
在实施例中,存储器管理器20可以通过将第二存储器装置220划分成多个区(zone)来控制第二存储器装置220。第一存储器装置210和第二存储器装置220中的多个区可用作独立的高速缓存空间,并且存储器管理器20可基于设定的准则保留或逐出高速缓存空间210和220中存储的数据。为了逐出高速缓存空间210和220中存储的数据,存储器管理器20可以收集包括数据被命中的时间信息的命中信息,但这不限于此。
在实施例中,存储器管理器20可以进行控制使得将在高速缓存空间210和220中已经被命中超过一定次数的数据保留在第二存储器装置220的特定区域中,例如,保留在逐出抑制区域中,并且可以抑制将逐出抑制区域中的数据逐出到存储装置120。结果,具有高读取频率的数据,例如未来很可能被再次访问的数据,可以从第二存储器装置220读取,而不是从存储装置120读取。通过将这种数据存储在第二存储器装置220中的诸如逐出抑制区域的单独区域中而不是存储在存储装置120,可以以更高的速度读取数据。
因此,可以减少用于访问处理主机的请求所需的数据的、控制器110对存储装置120的访问频率,从而可以提高数据存储装置10的操作速度。
图2是示出根据实施例的控制器110的配置的示图。
参照图2,根据实施例的控制器110可以包括处理器111、主机接口113、存储器115、存储器控制器117、第二存储器装置220和存储器管理器20。
处理器111可以包括第一存储器装置210。第一存储器装置210可以被设置为高速缓存空间的一部分并且被配置为存储用于响应于来自主机的请求执行操作的指令和数据。在图2中,作为示例,第一存储器装置210设置在处理器111的内部,但是其他实施方案也是可能的,例如,第一存储器装置210可以设置在处理器111的外部。
在实施例中,第一存储器装置210可以包括诸如SRAM或DRAM的存储器电路和被配置为处理对存储器电路中存储的数据的访问的控制电路。第一存储器装置210可以在逻辑上和物理上位置相对靠近处理器111并且以第一速度操作。
第二存储器装置220可以是第二级高速缓存存储器L2,第二级高速缓存存储器L2以比第一速度慢的第二速度操作,并且在逻辑上和物理上位置比第一存储器装置210远离处理器111。第二存储器装置220可被划分为第一区Z1、第二区Z2以及第三区Z3。
可以给高速缓存空间中的每一个,即第一存储器装置210和第二存储器装置220的区Z1、Z2和Z3,分配唯一标识符(ID)。
主机接口113可以根据处理器111的控制从主机接收命令和时钟信号,并提供用于控制数据输入/输出的通信通道。具体地,主机接口113可以提供主机与数据存储装置10之间的物理连接。主机接口113可以根据主机的总线格式提供数据存储装置10与主机之间的接口连接。主机的总线格式可以包括诸如以下的标准接口协议之中的至少一个:安全数字协议、通用串行总线(USB)协议、多媒体卡(MMC)协议、嵌入式MMC(eMMC)协议、个人计算机存储卡国际协会(PCMCIA)协议、并行高级技术附件(PATA)协议、串行高级技术附件(SATA)协议、小型计算机系统接口(SCSI)协议、串列SCSI(SAS)协议、外围组件互连(PCI)协议、高速PCI(PCI-E)协议或通用闪存(UFS)协议。
控制器110的操作所需的例如固件或软件的程序代码可以存储在存储器115中。存储器115可以包括被配置为存储由程序代码所使用的代码数据等的只读存储器(ROM)和被配置为存储控制器110的操作所需的数据或由控制器110生成的数据的RAM。
存储器控制器117可以提供用于控制器110和存储装置120之间的信号传输和接收的通信通道。存储器控制器117可以根据处理器111的控制将主机的输入数据写入存储装置120。存储器控制器117可以将从存储装置120读出的数据提供给主机。
存储器管理器20可处理来自处理器111的存储器访问请求。处理器111可以将对数据或指令的存储器访问请求传输到存储器管理器20。为了处理来自处理器111的存储器访问请求,存储器管理器20可以将相应的存储器访问请求传输到第一存储器装置210、第二存储器装置220、存储器115和存储器控制器117之中的至少一个。
在实施例中,由于数据高速缓存在第一存储器装置210或第二存储器装置220中,可以使用在处理器111中运行的应用程序中运行的索引表来管理数据的高速缓存位置。在实施例中,索引表可以包括数据的物理地址和逻辑地址之间的映射信息。物理地址可以包括数据高速缓存空间210、Z1、Z2和Z3的ID以及数据在具有相应的ID的高速缓存空间210、Z1、Z2和Z3中的存储位置。因此,当需要访问特定数据时,存储器管理器20可从索引表获取待访问的目标数据的物理地址,并访问相应的物理区域以读取数据。
第二存储器装置220的第三区Z3中存储的数据的逻辑地址可以作为参考表211在第一存储器装置210中进行管理。当数据存储在第三区Z3中时,参考表211可用于指示数据是否在第三区Z3中。在实施例中,可通过对待存储在第三区Z3中的数据的逻辑地址进行散列(hash)来配置参考表211,但并不限于此。
当在第一存储器装置210未命中从主机接收到对其进行读取操作的请求的数据时,存储器管理器20可通过参考参考表211来确定该数据是否在第三区Z3中。可以在检查第一区Z1和第二区Z2之前进行这种确定。当确定该数据在第三区Z3中时,存储器管理器20可通过参考索引表从第三区Z3的相应的物理区域读取数据,并将读取的数据提供给主机。当确定相应的数据不在第三区Z3中时,存储器管理器20可基于索引表通过顺序地访问第一区Z1和第二区Z2来搜索数据。
在实施例中,存储器管理器20可以将在第一存储器装置210中命中的数据复制到第一区Z1,将在第一区Z1中命中的数据复制到第二区Z2,并且将在第二区Z2中命中的数据复制到第三区Z3。结果,在高速缓存级210和220中频繁命中的数据可以累积在第二存储器装置220的第三区Z3中。
存储器管理器20可以抑制将在第三区Z3中累积的数据逐出到存储装置120。因此,第三区Z3可被称为逐出抑制区域。
结果,可以从第二存储器装置220读取具有高读取频率的数据而无需访问存储装置120,因此可以提高数据存储装置10的读取性能。此外,可以最少化对具有有限寿命的存储装置120的访问,并且因此可以增加数据存储装置10的寿命。
图3是示出根据实施例的存储器管理器20的配置的示图。
参照图3,存储器管理器20可以包括地址转换器201、容量管理器203、命中数据管理器205、参考表管理器207和数据逐出器209。
地址转换器201可以执行用于将虚拟地址转换成数据所在的物理地址的操作,该虚拟地址用于处理器111对应用程序的处理。在实施例中,为了将虚拟地址转换为物理地址,地址转换器201可以使用页面表或被配置为存储从页面表的条目之中选择的至少一个条目的转换后援缓冲器(translation lookaside buffer,TLB)。页面表可以包括多个条目,并且多个条目中的每一个可以包括虚拟地址、与虚拟地址相对应的物理页面地址以及元信息。TLB可以通过存储根据设定准则在页面表的条目之中选择的至少一个条目,来允许处理器111的存储器请求被高速处理。
当将数据高速缓存到高速缓存空间210和220中时,数据的高速缓存位置可以在处理器111中运行的应用程序中作为索引表来进行管理,并且地址转换器201可以通过参考索引表来检测读取目标数据的高速缓存位置。索引表可以是数据的物理地址与高速缓存的存储器装置或高速缓存的区的ID彼此映射的表。
在实施例中,可以由用户来定义、或者可以由处理器111或在处理器111中运行的应用程序来设置第二存储器装置220中的第一区Z1、第二区Z2和第三区Z3中的每一个的容量。
当数据存储在第一区Z1中时,容量管理器203可以将第一区Z1的数据占用率与第一阈值TH1进行比较。当数据存储在第二区Z2中时,容量管理器203可以将第二区Z2的数据占用率与第二阈值TH2进行比较。当数据存储在第三区Z3中时,容量管理器203可以将第三区Z3的数据占用率与第三阈值TH3进行比较。
命中数据管理器205可将在第一存储器装置210中命中的数据复制到第一区Z1,将在第一区Z1中命中的数据复制到第二区Z2,将在第二区Z2中命中的数据复制到第三区Z3。因此,第三区Z3中存储的数据可以是在高速缓存级210和220中频繁命中的一组数据。
当数据通过命中数据管理器205存储在第三区Z3中时,参考表管理器207可以确定相应的数据是否在第三区Z3中来作为参考表211。在实施例中,可以通过对第三区Z3中存储的数据的逻辑地址进行散列来配置参考表211,但这不限于此。
数据逐出器209可以基于容量管理器203的比较结果来保留或逐出第一至第三区Z1、Z2和Z3的数据。在实施例中,当第一区Z1的数据占用率等于或大于第一阈值TH1时,数据逐出器209可以从第一区Z1选择并逐出数据,或者释放对所选择的数据存储区域的分配,使得第一区Z1的数据占用率等于或小于第一参考值。当第二区Z2的数据占用率等于或大于第二阈值TH2时,数据逐出器209可以从第二区Z2选择并逐出数据,或者释放对所选择的数据存储区域的分配,使得第二区Z2的数据占用率等于或小于第二参考值。
当第三区Z3的数据占用率等于或大于第三阈值TH3时,数据逐出器209可以从第三区Z3选择并逐出数据,或者释放对所选择的数据存储区域的分配,使得第三区Z3的数据占用率小于第三参考值。可以由用户来定义、或者可以由处理器111或在处理器111中运行的应用程序来设置第一至第三参考值。从第三区Z3逐出的数据可存储在存储装置120中。
数据逐出器209可以随机地或者使用最近最少使用(LRU)策略或者与LRU策略类似或不同的各种策略来选择逐出目标数据。
图4是示出基于所公开技术的实施例的数据存储装置的操作方法的流程图。图4示出当数据存储装置从主机接收执行读取操作的请求并执行读取操作时的操作方法。
参照图4,当处于待机状态(S101)的控制器110响应于主机的请求运行应用程序时,控制器110可以接收读取命令(S103)。控制器110可以响应于接收到的命令通过存储器管理器20的地址转换器201提取与请求读取的虚拟地址相对应的物理页面地址。
控制器110可以确定位于提取的物理页面地址中的数据是否在第一存储器装置(L1)210中(S105),并且当确定该数据在第一存储器装置210中时(S105:是(Y)),控制器110可以从第一存储器装置(L1)210读取数据(S107)并输出读取的数据(S109)。此外,控制器110可以将读取的数据复制到第一区Z1(S111)。将读取的数据复制到第一区Z1之后,可以对第一区Z1进行容量管理操作(S20)。
当确定位于提取的物理页面地址中的数据不在第一存储器装置(L1)210中时(S105:否(N)),控制器110可通过参考第一存储器装置210中的参考表211(S113)来确定访问目标数据是否在第三区Z3中(S115)。
当确定访问目标数据在第三区Z3中时(S115:Y),控制器110可从第三区Z3读取数据(S117)并输出读取的数据(S119)。然后,控制器110可以处于待机状态(S101)。
当确定访问目标数据不在第三区Z3中时(S115:N),控制器110可基于在运行的应用程序中管理的索引表来确定访问目标数据是否在第一区Z1中(S121)。当确定访问目标数据在第一区Z1中时(S121:Y),控制器110可从第一区Z1读取数据(S123)并输出读取的数据(S125)。此外,控制器110可将读取的数据复制到第二区Z2中(S127)。将读取的数据复制到第二区Z2之后,可以对第二区Z2进行容量管理操作(S30)。
当确定访问目标数据不在第一区Z1中时(S121:N),控制器110可基于索引表来确定访问目标数据是否在第二区Z2中(S129)。当确定访问目标数据在第二区Z2中时(S129:Y),控制器110可从第二区Z2读取数据(S131)并输出读取的数据(S133)。此外,控制器110可将读取的数据复制到第三区Z3中(S135)。可根据复制到第三区Z3的数据的逻辑地址来更新参考表211(S137)。将读取的数据复制到第三区Z3之后,可以对第三区Z3进行容量管理操作(S40)。
当确定访问目标数据不在第二区Z2中时(S129:N),控制器110可访问存储装置120,从存储装置120读取数据(S139),并输出读取的数据(S141)。然后,控制器110可以处于待机状态(S101)。
图5是说明基于所公开技术的实施例的数据存储装置的操作方法的示图。
可以将第一存储器装置(L1)210中命中的数据A、C、D、F和H复制到第二存储器装置(L2)220的第一区Z1。
可以将第一区Z1中命中的数据C和H复制到第二区Z2。
可以将第二区Z2中命中的数据H复制到第三区Z3,并且可以通过散列数据H的逻辑地址来更新参考表211。
当第三区Z3的数据占用率等于或大于第三阈值TH3时,从第三区Z3选择牺牲数据,然后将该牺牲数据逐出到存储装置120,以使第三区Z3的数据占用率小于第三参考值。
图6至图8是说明根据实施例的管理数据存储装置的容量的方法的流程图。
图6示出对第一区Z1的容量管理操作(S20)的示例。
当将在第一存储器装置210中命中的数据复制到第一区Z1时,控制器110可以确定第一区Z1的数据占用率,例如第一区Z1的使用率,是否等于或大于第一阈值TH1(S201)。当确定第一区Z1中存储了等于或大于第一阈值TH1的数据时(S201:Y),控制器110可从第一区Z1选择并删除牺牲数据以使第一区Z1的使用率等于或小于第一参考值(S203)。
当确定第一区Z1的数据占用率小于第一阈值TH1时(S201:N)或者在从第一区Z1删除牺牲数据之后,控制器110可以转换到待机状态(S101)。
图7示出对第二区Z2的容量管理操作(S30)的示例。
当将第一区Z1中命中的数据复制到第二区Z2时,控制器110可以确定第二区Z2的数据占用率,例如第二区Z2的使用率,是否等于或大于第二阈值TH2(S301)。当确定第二区Z2中存储了等于或大于第二阈值TH2的数据时(S301:Y),控制器110可从第二区Z2选择并删除牺牲数据以使第二区Z2的使用率等于或小于第二参考值(S303)。
当确定第二区Z2的数据占用率小于第二阈值TH2时(S301:N)或者在从第二区Z2删除牺牲数据之后,控制器110可以转换到待机状态(S101)。
图8示出对第三区Z3的容量管理操作(S40)的示例。
参照图8,当将第二区Z2中命中的数据复制到第三区Z3时,控制器110可以确定第三区Z3的数据占用率,例如第三区Z3的使用率,是否等于或大于第三阈值TH3(S401)。当确定第三区Z3中存储了等于或大于第三阈值TH3的数据时(S401:Y),控制器110可从第三区Z3选择牺牲数据(S403)并将所选择的牺牲数据逐出到存储装置120(S405),以使第三区Z3的使用率小于第三参考值。当从第三区Z3逐出数据时,可更新参考表211(S407)。
可以随机选择或者可以通过最近最少使用(LRU)策略或与LRU策略类似或不同的各种策略来选择图6至图8中的待从区Z1至区Z3中的每一个删除或逐出的牺牲数据。
由于在高速缓存级中重复访问的数据被保留在逐出抑制区域中,所以可以最少化对存储装置的访问,并且因此可以提高数据存储装置的性能和寿命。
图9是示出基于所公开技术的实施例的数据存储系统1000的示图。
参照图9,数据存储系统1000可包括主机装置1100和数据存储装置1200。在实施例中,数据存储装置1200可以被配置为固态驱动器(SSD)。
数据存储装置1200可以包括控制器1210、多个非易失性存储器装置1220-0至1220-n、缓冲存储器装置1230、电源1240、信号连接器1101和电源连接器1103。
控制器1210可控制数据存储装置1200的一般操作。控制器1210可以包括主机接口单元、控制单元、用作工作存储器的随机存取存储器、错误校正码(ECC)单元和存储器接口单元。在实施例中,控制器1210可以被配置为图1和图2中所示的控制器110。
主机装置1100可通过信号连接器1101与数据存储装置1200交换信号。该信号可以包括命令、地址、数据等。
控制器1210可以分析并处理从主机装置1100接收的信号。控制器1210可根据用于驱动数据存储装置1200的固件或软件来控制内部功能块的操作。
缓冲存储器装置1230可临时存储待存储在非易失性存储器装置1220-0至1220-n中的至少一个中的数据。此外,缓冲存储器装置1230可临时存储从非易失性存储器装置1220-0至1220-n中的至少一个中读取的数据。根据控制器1210的控制,缓冲存储器装置1230中临时存储的数据可被传输到主机装置1100或非易失性存储器装置1220-0至1220-n中的至少一个。
非易失性存储器装置1220-0至1220-n可以用作数据存储装置1200的存储介质。非易失性存储器装置1220-0到1220-n可分别通过多个通道CH0至CHn与控制器1210联接。一个或多个非易失性存储器装置可以联接到一个通道。联接到每个通道的非易失性存储器装置可以联接到相同的信号总线和数据总线。
电源1240可以将通过电源连接器1103输入的电力提供给数据存储装置1200的控制器1210、非易失性存储器装置1220-0至1220-n和缓冲存储器装置1230。电源1240可以包括辅助电源。辅助电源可以提供电力以使得当发生突然电力中断时数据存储装置1200正常终止。辅助电源可以包括足以存储所需电荷的大容量电容器。
根据主机装置1100和数据存储装置1200之间的接口方案,信号连接器1101可以被配置为各种类型的连接器中的一种或多种。
根据主机装置1100的电力供应方案,电源连接器1103可以被配置为各种类型的连接器中的一种或多种。
图10是示出基于所公开技术的实施例的数据处理系统3000的示图。参照图10,数据处理系统3000可以包括主机装置3100和存储器系统3200。
主机装置3100可以以诸如印刷电路板的板的形式配置。虽然未示出,但是主机装置3100可以包括用于执行主机装置的功能的内部功能块。
主机装置3100可以包括连接端子3110,诸如插座、插槽或连接器。存储器系统3200可与连接端子3110配合。
存储器系统3200可以以诸如印刷电路板的板的形式配置。存储器系统3200可称为存储器模块或存储卡。存储器系统3200可以包括控制器3210、缓冲存储器装置3220、非易失性存储器装置3231和3232、电源管理集成电路(PMIC)3240以及连接端子3250。
控制器3210可以控制存储器系统3200的一般操作。控制器3210可以以与图1和图2中所示的控制器110相同的方式配置。
缓冲存储器装置3220可以临时存储待存储在非易失性存储器装置3231和3232中的数据。此外,缓冲存储器装置3220可以临时存储从非易失性存储器装置3231和3232读取的数据。根据控制器3210的控制,缓冲存储器装置3220中临时存储的数据可以被传输到主机装置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的一侧。
图11是示出基于所公开技术的实施例的数据处理系统4000的示图。参照图11,数据处理系统4000可以包括主机装置4100和存储器系统4200。
主机装置4100可以以诸如印刷电路板的板的形式配置。虽然未示出,但主机装置4100可以包括用于执行主机装置的功能的内部功能块。
存储器系统4200可以以表面安装型封装的形式配置。存储器系统4200可以通过焊球4250安装到主机装置4100。存储器系统4200可以包括控制器4210、缓冲存储器4220和非易失性存储器装置4230。
控制器4210可以控制存储器系统4200的一般操作。控制器4210可以以与图1和图2所示的控制器110相同的方式配置。
缓冲存储器装置4220可以临时存储待存储在非易失性存储器装置4230中的数据。此外,缓冲存储器装置4220可以临时存储从非易失性存储器装置4230读取的数据。可以根据控制器4210的控制将缓冲存储器装置4220中临时存储的数据传输到主机装置4100或非易失性存储器装置4230。
非易失性存储器装置4230可以用作存储器系统4200的存储介质。
图12是示出基于所公开技术的实施例的包括数据存储装置的网络系统5000的示图。参照图12,网络系统5000可以包括通过网络5500联接的服务器系统5300以及多个客户端系统5410、5420和5430。
服务器系统5300可以响应于来自多个客户端系统5410至5430的请求来服务数据。例如,服务器系统5300可以存储由多个客户端系统5410至5430提供的数据。又例如,服务器系统5300可向多个客户端系统5410至5430提供数据。
服务器系统5300可以包括主机装置5100和存储器系统5200。存储器系统5200可以被配置为图1中所示的数据存储装置10、图9中所示的数据存储装置1200、图10中所示的存储器系统3200或图11中所示的存储器系统4200。
仅描述或示出所公开技术的实施方案或实施例的有限示例。基于本专利文件中所公开和示出的内容,可以对所公开的实施方案或实施例以及其他实施方案或实施例进行变型和改进。
Claims (19)
1.一种数据存储装置,包括:
第一存储器装置,存储第一数据;
第二存储器装置,包括存储第二数据的第一区、存储第三数据的第二区和存储第四数据的第三区;
存储装置;以及
控制器,与所述第一存储器装置、所述第二存储器装置和所述存储装置通信,从主机接收一个或多个请求,并且响应于来自所述主机的所述一个或多个请求,控制来自所述第一存储器装置、所述第二存储器装置和所述存储装置的数据的输入以及去往所述第一存储器装置、所述第二存储器装置和所述存储装置的数据的输出,并且
其中,所述控制器进一步将从所述第一存储器装置读取的所述第一数据的一部分复制到所述第一区,将从所述第一区读取的所述第二数据的一部分复制到所述第二区,将从所述第二区读取的所述第三数据的一部分复制到所述第三区,以及将在所述第一存储器装置和所述第二存储器装置中存储的数据之中被读取超过设定次数的数据存储在所述第三区中。
2.根据权利要求1所述的数据存储装置,其中所述第一存储器装置、所述第二存储器装置和所述存储装置分别以第一速度、第二速度和第三速度操作,所述第二速度比所述第一速度慢,所述第三速度比所述第一速度慢。
3.根据权利要求1所述的数据存储装置,其中所述控制器使用参考表来管理所述第三区中存储的所述第四数据的地址。
4.根据权利要求3所述的数据存储装置,其中,所述控制器:当所述主机请求的读取数据不在所述第一存储器装置中时,通过参考所述参考表来确定是否访问所述第三区。
5.根据权利要求1所述的数据存储装置,其中所述控制器保留所述第三区的所述第四数据,直到所述第三区的数据占用率达到第一设定值。
6.根据权利要求5所述的数据存储装置,其中,所述控制器:当所述第三区的数据占用率达到所述第一设定值时,从所述第三区选择牺牲数据并将所选择的牺牲数据逐出到所述存储装置。
7.根据权利要求6所述的数据存储装置,其中所述控制器选择所述牺牲数据,使得所述第三区的数据占用率小于第二设定值。
8.根据权利要求1所述的数据存储装置,其中所述控制器基于所述第一区的数据占用率从所述第二数据之中选择牺牲数据并且从所述第一区删除所选择的牺牲数据。
9.根据权利要求1所述的数据存储装置,其中所述控制器基于所述第二区的数据占用率从所述第三数据之中选择牺牲数据并且从所述第二区删除所选择的牺牲数据。
10.一种数据存储装置的操作方法,所述方法由所述数据存储装置执行并且包括:
从主机接收一个或多个请求以从第一存储器装置、第二存储器装置和存储装置中的一个读取数据,所述第二存储器装置包括第一区、第二区和第三区;
基于所述一个或多个请求,从所述第一存储器装置、所述第二存储器装置或所述存储装置读取数据;
响应于来自所述主机的每个请求,向所述主机提供从所述第一存储器装置、所述第二存储器装置或所述存储装置读取的数据;并且
将已经被读取超过设定次数的频繁读取的数据存储在所述第三区中。
11.根据权利要求10所述的方法,其中所述第一存储器装置、所述第二存储器装置和所述存储装置分别以第一速度、第二速度和第三速度操作,所述第二速度比所述第一速度慢,所述第三速度比所述第一速度慢。
12.根据权利要求10所述的方法,进一步包括:
将从所述第一存储器装置读取的数据复制到所述第一区;
将从所述第一区读取的数据复制到所述第二区;并且
将从所述第二区读取的数据复制到所述第三区。
13.根据权利要求10所述的方法,进一步包括配置参考表,所述参考表包括所述第三区中存储的数据的地址。
14.根据权利要求13所述的方法,其中所述读取数据包括:检查与来自所述主机的请求相对应的数据是否在所述第一存储器装置中;以及当所述检查的结果指示所述数据不在所述第一存储器装置中时,通过参考所述参考表来确定是否访问所述第三区。
15.根据权利要求13所述的方法,进一步包括:保留所述第三区中存储的数据,直到所述第三区的数据占用率达到第一设定值。
16.根据权利要求15所述的方法,进一步包括:当所述第三区的数据占用率达到所述第一设定值时,从所述第三区选择牺牲数据并将所述牺牲数据逐出到所述存储装置。
17.根据权利要求16所述的方法,进一步包括:从所述第三区选择所述牺牲数据,使得所述第三区的数据占用率小于第二设定值。
18.根据权利要求10所述的方法,进一步包括:基于所述第一区的数据占用率在所述第一区中选择牺牲数据并且从所述第一区删除所选择的牺牲数据。
19.根据权利要求10所述的方法,进一步包括:基于所述第二区的数据占用率在所述第二区中选择牺牲数据并且从所述第二区删除所选择的牺牲数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200082960A KR20220005285A (ko) | 2020-07-06 | 2020-07-06 | 데이터 저장 장치 및 그 동작 방법 |
KR10-2020-0082960 | 2020-07-06 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113900583A true CN113900583A (zh) | 2022-01-07 |
Family
ID=79166791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110214529.3A Withdrawn CN113900583A (zh) | 2020-07-06 | 2021-02-25 | 数据存储装置及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11775212B2 (zh) |
KR (1) | KR20220005285A (zh) |
CN (1) | CN113900583A (zh) |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101826047B1 (ko) * | 2011-09-28 | 2018-02-07 | 삼성전자주식회사 | 저장 장치 및 그 구동 방법 |
US9710173B2 (en) | 2014-05-20 | 2017-07-18 | Micron Technology, Inc. | Read cache memory with DRAM class promotion |
CN105814548B (zh) | 2014-07-14 | 2019-02-12 | 上海兆芯集成电路有限公司 | 具有使用不同编索引方案的主高速缓存器和溢出高速缓存器的高速缓存器系统 |
US9747035B2 (en) * | 2014-12-17 | 2017-08-29 | Empire Technology Development Llc | Reducing memory overhead associated with memory protected by a fault protection scheme |
GR20150100422A (el) * | 2015-09-28 | 2017-05-15 | Arm Limited | Αποθηκευση δεδομενων |
KR102550343B1 (ko) * | 2016-07-27 | 2023-07-03 | 삼성전자주식회사 | 솔리드 스테이트 드라이브 장치 및 그것의 동작 방법 |
US10795586B2 (en) * | 2018-11-19 | 2020-10-06 | Alibaba Group Holding Limited | System and method for optimization of global data placement to mitigate wear-out of write cache and NAND flash |
CN111857556B (zh) * | 2019-04-30 | 2024-05-24 | 伊姆西Ip控股有限责任公司 | 管理存储对象的元数据的方法、装置和计算机程序产品 |
KR20210025344A (ko) * | 2019-08-27 | 2021-03-09 | 에스케이하이닉스 주식회사 | 이종 메모리를 갖는 메인 메모리 장치, 이를 포함하는 컴퓨터 시스템, 그것의 데이터 관리 방법 |
-
2020
- 2020-07-06 KR KR1020200082960A patent/KR20220005285A/ko unknown
-
2021
- 2021-02-25 CN CN202110214529.3A patent/CN113900583A/zh not_active Withdrawn
- 2021-03-01 US US17/188,328 patent/US11775212B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20220004340A1 (en) | 2022-01-06 |
US11775212B2 (en) | 2023-10-03 |
KR20220005285A (ko) | 2022-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10789162B2 (en) | Memory system and method for controlling nonvolatile memory | |
US8918580B2 (en) | Storage device with buffer memory including non-volatile RAM and volatile RAM | |
CN110297780B (zh) | 存储装置及计算机系统 | |
WO2014061064A1 (en) | Cache control apparatus and cache control method | |
JP6139381B2 (ja) | メモリシステムおよび方法 | |
US11194737B2 (en) | Storage device, controller and method for operating the controller for pattern determination | |
US11023132B2 (en) | Electronic device, computer system, and control method | |
US11526296B2 (en) | Controller providing host with map information of physical address for memory region, and operation method thereof | |
US20190303019A1 (en) | Memory device and computer system for improving read performance and reliability | |
US11422930B2 (en) | Controller, memory system and data processing system | |
KR102653843B1 (ko) | 데이터 저장 장치 및 이의 리드 디스터번스 방지 방법, 이를 이용한 스토리지 시스템 | |
CN113614702A (zh) | 基于检测到的读取命令活跃流的自适应预读高速缓存管理器 | |
CN111414131A (zh) | 数据存储装置、其操作方法和包括其的存储系统 | |
CN114546249A (zh) | 数据存储装置及其操作方法 | |
CN106055488B (zh) | 数据储存设备及其操作方法 | |
US11513960B2 (en) | Data storage device and operating method thereof | |
US11893269B2 (en) | Apparatus and method for improving read performance in a system | |
US11243718B2 (en) | Data storage apparatus and operation method i'hereof | |
US11775212B2 (en) | Data storage device and operating method thereof | |
US11416410B2 (en) | Memory system, method of operating the same and data processing system for supporting address translation using host resource | |
CN113535604B (zh) | 存储器系统 | |
EP4287028A1 (en) | Storage device providing high purge performance and memory block management method thereof | |
US20220391093A1 (en) | Memory system, data processing system including the same, and operating method thereof | |
CN117149052A (zh) | 提供高清除性能的存储设备及其存储块管理方法 | |
KR20220108342A (ko) | 메모리 시스템 내 프리 블록을 확보하는 장치 및 방법 |
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 |
Application publication date: 20220107 |
|
WW01 | Invention patent application withdrawn after publication |