CN110888595A - 数据存储装置、其操作方法以及包括其的存储*** - Google Patents
数据存储装置、其操作方法以及包括其的存储*** Download PDFInfo
- Publication number
- CN110888595A CN110888595A CN201910485249.9A CN201910485249A CN110888595A CN 110888595 A CN110888595 A CN 110888595A CN 201910485249 A CN201910485249 A CN 201910485249A CN 110888595 A CN110888595 A CN 110888595A
- Authority
- CN
- China
- Prior art keywords
- data
- data block
- buffer
- memory
- buffer 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
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- 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/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/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
- G06F3/0641—De-duplication techniques
-
- 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/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
-
- 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
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- 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/21—Employing a record carrier using a specific recording technology
- G06F2212/214—Solid state disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/26—Using a specific storage system architecture
- G06F2212/261—Storage comprising a plurality of storage devices
-
- 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/31—Providing disk cache in a specific location of a storage system
- G06F2212/312—In storage controller
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7203—Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7208—Multiple device management, e.g. distributing data over multiple flash 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)
- Memory System (AREA)
- Read Only Memory (AREA)
Abstract
数据存储装置、其操作方法以及包括其的存储***。一种数据存储装置包括:存储部,其被配置为当数据块被完全编程时生成编程完成信号;缓冲存储器,其具有分别被配置为高速缓存多个数据块的多个缓冲区域;以及控制器,其被配置为:在缓冲存储器中先前高速缓存的数据块被编程到存储部的同时,从主机装置接收数据块;将所接收的数据块高速缓存到缓冲存储器中;响应于编程完成信号,从缓冲存储器删除所编程的数据块;从主机装置接收新数据块;并且将所接收的新数据块高速缓存在缓冲存储器的空缓冲区域中。
Description
技术领域
各种实施方式总体上涉及半导体集成装置,更具体地,涉及一种数据存储装置、其操作方法以及包括其的存储***。
背景技术
存储装置联接到主机装置并根据主机装置的请求执行数据输入/输出操作。存储装置可使用各种存储介质来存储数据。
由于使用闪存的存储介质支持大容量,具有非易失性特性、低单价、小功耗,并且提供高数据处理速度,所以对使用闪存的存储介质的需求不断增加。
闪存可被配置成固态驱动器(SSD)存储器以替换硬盘,或者可被配置成可用作内置存储器的嵌入式存储器或移动存储器。闪存被应用于各种电子装置。
随着电子装置的发展,存储介质需要具有更高的容量、更高的集成密度、更小的尺寸、更高的性能和更高的速度。具体地,用于处理大数据的存储介质的性能可由其数据处理速度来确定。
发明内容
在实施方式中,一种数据存储装置可包括:存储部,其被配置为当数据块(datachunk)被完全编程时生成编程完成信号;缓冲存储器,其具有分别被配置为高速缓存多个数据块的多个缓冲区域;以及控制器,其被配置为:在缓冲存储器中先前高速缓存的数据块被编程到存储部的同时,从主机装置接收数据块;将所接收的数据块高速缓存到缓冲存储器中;响应于编程完成信号,从缓冲存储器删除编程的数据块;从主机装置接收新数据块;并且将所接收的新数据块高速缓存在缓冲存储器的空缓冲区域中。
在实施方式中,一种数据存储装置可包括:存储部;缓冲存储器,其被划分成多个缓冲区域;以及控制器,其被配置为:将高速缓存在缓冲存储器中的数据块传送到存储部;在所传送的数据块被编程的同时将新数据块高速缓存到缓冲存储器的空缓冲区域中;响应于在所传送的数据块被完全编程的时间点从存储部提供的编程完成信号,释放高速缓存所传送的数据块的缓冲区域;并且将所释放的缓冲区域指派为空缓冲区域。
在实施方式中,提供了一种数据存储部的操作方法,该数据存储部包括存储部、缓冲存储器以及被配置为控制与存储部的数据交换的控制器,所述操作方法包括以下步骤:由控制器将从主机装置传送的数据块高速缓存到缓冲存储器中;由控制器将高速缓存在缓冲存储器中的数据块传送到存储部以对所述数据块进行编程;在所传送的数据块被编程的同时,由控制器从主机装置接收新数据块并将所述新数据块高速缓存到缓冲存储器中;当所传送的数据块被完全编程时由存储部生成编程完成信号,并将所生成的编程完成信号提供给控制器;以及由控制器从缓冲存储器删除所编程的数据块;以及由控制器指派所编程的数据块被删除的缓冲区域作为缓冲存储器的空缓冲区域。
在实施方式中,一种存储***可包括主机装置和数据存储装置,该数据存储装置包括:存储部,其被配置为当数据块被完全编程时生成编程完成信号;缓冲存储器,其具有分别被配置为高速缓存多个数据块的多个缓冲区域;以及控制器,其被配置为控制与存储部的数据交换,其中,所述控制器:在高速缓存在缓冲存储器中的数据块被编程到存储部的同时,从主机装置接收新数据块;将所接收的数据块高速缓存到缓冲存储器中;响应于编程完成信号,从缓冲存储器删除编程的数据块;从主机装置接收另一新数据块;并且将所述另一新数据块高速缓存在缓冲存储器的空缓冲区域中。
在实施方式中,一种存储器***可包括:存储部,其被配置为当数据块被编程时生成编程完成信号;缓冲存储器,其具有分别被配置为高速缓存多个数据块的多个缓冲区域;以及控制器,其被配置为:在缓冲存储器中先前高速缓存的数据块被编程到存储部的同时,从主机装置接收数据块以将所接收的数据块高速缓存到缓冲存储器中;响应于编程完成信号,删除高速缓存在缓冲存储器的缓冲区域中的编程的数据块;并且指派编程的数据块被删除的缓冲区域作为缓冲存储器的空缓冲区域。
附图说明
图1是示出根据实施方式的数据存储装置的配置图。
图2是示出根据本实施方式的控制器的配置图。
图3是示出根据实施方式的数据存储装置的操作方法的流程图。
图4是用于描述根据实施方式的编程方法的时序图。
图5A至图5D是用于描述根据本实施方式的在编程操作期间缓冲存储器的状态改变的图。
图6是用于描述根据实施方式的编程完成报告方法的图。
图7是用于描述根据实施方式的编程完成报告方法的图。
图8是示出根据实施方式的数据存储***的图。
图9和图10是示出根据实施方式的数据处理***的图。
图11是示出包括根据实施方式的数据存储装置的网络***的图。
图12是示出根据实施方式的数据存储装置中所包括的非易失性存储器装置的框图。
具体实施方式
以下,将在下面参照附图通过示例性实施方式描述根据本公开的数据存储装置、其操作方法以及包括其的存储***。
图1是示出根据实施方式的数据存储装置10的配置图。
参照图1,根据本实施方式的数据存储装置10可包括控制器110、存储部120和缓冲存储器130。
控制器110可响应于主机装置的请求来控制存储部120。例如,控制器110可根据主机装置的编程(写)请求来控制存储部120对数据进行编程。另外,控制器110可响应于主机装置的读请求将存储在存储部120中的数据提供给主机装置。
存储部120可根据控制器110的控制将数据写入其中或输出写入其中的数据。存储部120可被配置成易失性或非易失性存储器装置。在实施方式中,存储部120可利用选自诸如EEPROM(电可擦除可编程ROM)、NAND闪存、NOR闪存、PRAM(相变RAM)、ReRAM(电阻式RAM)、FRAM(铁电RAM)和STT-MRAM(自旋扭矩转移磁RAM)的各种非易失性存储器装置的存储器装置实现。存储部120可包括多个晶片Die_0至Die_n、多个芯片或多个封装。此外,存储部120可包括各自被配置为存储一位数据的单级单元或者各自被配置为存储多位数据的多级单元。
在实施方式中,存储部120可包括存储器单元阵列121和页缓冲器123。
存储器单元阵列121可包括联接在多条字线和多条位线之间的多个存储器单元。存储器单元阵列121可被划分成多个平面Plane 0至Plane n。
页缓冲器123可包括多个页缓冲器电路PB 0至PB n。在实施方式中,可针对平面Plane 0至Plane n中的每一个安装页缓冲器123。
页缓冲器123可包括与存储器单元阵列121的各条位线对应的读/写电路。在写操作期间,从主机装置提供的数据可通过控制器110被高速缓存到缓冲存储器130中,然后通过页缓冲器123被写到存储器单元阵列121。在读操作期间,从存储器单元阵列121读取的数据可被加载到页缓冲器123,然后通过控制器110被提供给主机装置。
当数据存储装置10在与主机装置互通的同时执行写入或读取数据的一系列操作时,缓冲存储器130可用作用于高速缓存数据的空间。图1示出缓冲存储器130被定位在控制器110外部,但是缓冲存储器130可被定位在控制器110内部。
缓冲存储器130可由缓冲管理器117控制。
缓冲管理器117可将缓冲存储器130划分成多个缓冲区域(槽),并且指派各个缓冲区域高速缓存数据或者释放所指派的缓冲区域。当缓冲区域被指派时,可指示数据被高速缓存在缓冲区域中或者高速缓存在缓冲区域中的数据有效。当缓冲区域被释放时,可指示数据未被高速缓存在缓冲区域中或者高速缓存在缓冲区域中的数据无效。
在实施方式中,当从存储部120传送编程完成信号时,缓冲管理器117可释放高速缓存完全编程的单元数据的缓冲区域。然后,缓冲管理器117可将从主机装置提供的新编程数据高速缓存在所释放的缓冲区域中。
单元数据可指示一次被编程到存储器单元阵列121或从存储器单元阵列121读取的数据组。
在实施方式中,控制器110可在正常编程模式或高速缓存编程模式下执行写操作。
在正常编程模式下,在第一数据被完全写到存储部120的存储器单元阵列121之后,接下来要写入的第二数据可被存储在缓冲存储器130中。
在高速缓存编程模式下,在第一数据正被写到存储部120的存储器单元阵列121的同时,接下来要写入的第二数据可被存储在缓冲存储器130中。
缓冲存储器130可具有有限容量。具体地,在数据存储装置10安装在移动电子装置中的情况下,可进一步限制缓冲存储器130的容量。
因此,在高速缓存编程模式下,一旦正常完成编程,缓冲存储器130就可被释放以高速缓存新数据,这使得可使数据存储装置10的性能最大化。
根据本实施方式,控制器110可被配置为在先前高速缓存在缓冲存储器130中的数据正被编程在存储部120中的同时,将接下来要编程的数据(或数据块)高速缓存到缓冲存储器130的空槽中。此外,控制器110可在先前高速缓存的数据(或数据块)被完全编程的时间点从存储部120接收编程完成信号。响应于编程完成信号,控制器110可释放存储先前高速缓存的数据的缓冲槽,并且为要编程的新数据(或新数据块)指派所释放的缓冲槽。
此外,根据本实施方式,数据存储装置10可在先前从缓冲存储器130提供的单元数据(或数据块)正被编程到存储部120的同时,从主机装置接收新单元数据(或新数据块)并将所接收的数据存储在缓冲存储器130中。
存储部120可被配置为在单元数据被完全编程时或者在单元数据被完全编程之后不久生成编程完成信号。
缓冲存储器130可被配置为将多个单元数据高速缓存到各个槽中。
控制器110可将先前高速缓存在缓冲存储器130中的数据(或数据块)编程到存储部120,响应于从存储部120提供的编程完成信号从缓冲存储器130删除完全编程的先前高速缓存的数据(或数据块),从主机装置接收新单元数据,并将所接收的数据存储在缓冲存储器130的空槽中。
接收新单元数据以将所接收的新数据存储在缓冲存储器130中的操作可与将缓冲存储器130的先前高速缓存的单元数据编程到存储部120的操作并行执行。即,高速缓存新单元数据(或新数据块)的操作与将先前高速缓存的单元数据编程到存储器单元的操作可同时执行。
存储部120可包括多个晶片,并且这多个晶片可同时从缓冲存储器130接收单元数据,并且对所接收的单元数据进行编程。即,控制器110可通过晶片交织方案来控制编程操作。
在实施方式中,存储部120可响应于控制器110的状态读命令READ STATUS来传送编程完成信号。在实施方式中,存储部120可根据内部就绪/繁忙信号InternalRB/、外部就绪/繁忙信号External RB/或其组合来生成并传送编程完成信号。
下面将详细描述存储部120生成并传送编程完成信号的方法。
根据传统技术在高速缓存编程操作期间生成和传送编程完成信号如下。当在对先前页的编程操作完成之后正在执行对当前页的编程操作时,即使在对先前页的编程操作完成之后,编程完成的先前页的编程完成信号也未立即传送到控制器。在先前页被完全编程并且当前页被编程2/3之后,先前页的编程完成信号被传送到控制器。
即,传送编程目标页的编程完成信号的时间点可被设定为比对编程目标页的编程操作完成的时间点晚的时间点。因此,从缓冲存储器删除编程到编程目标页的数据的时间点可不可避免地延迟。该延迟可导致控制器和主机装置的性能劣化。
然而,在本实施方式中,一旦编程目标页被完全编程,存储部120就将编程目标页的编程完成信号传送到控制器110。因此,高速缓存完全编程的数据的缓冲区域可被立即释放以高速缓存新数据。
此外,控制器110可与在存储部120上执行编程操作的操作并行地将新数据从主机装置传送到缓冲存储器130。因此,可去除由主机装置的开销(例如,将数据从主机装置传送到缓冲存储器130所需的时间或者主机装置驱动存储部120以用于编程所需的时间)导致的时间延迟。
图2是示出根据本实施方式的控制器130的配置图。
参照图2,根据本实施方式的控制器110可包括CPU 111、主机接口113、ROM 1151、RAM 1153、缓冲管理器117和存储器接口119。
CPU 111可被配置为将各种控制信息传送到主机接口113、RAM 1153、缓冲管理器117和存储器接口119,所述各种控制信息是从存储部120读取数据或将数据写到存储部120所需的。在实施方式中,CPU 111可根据为数据存储装置10的各种操作提供的固件来操作。在实施方式中,CPU 111可执行用于执行垃圾收集、地址映射或耗损平衡以管理存储部120的闪存转换层(FTL)的功能或者检测并纠正从存储部120读取的数据的错误的功能。
主机接口113可提供通信信道以用于根据CPU 111的控制从主机装置接收命令和时钟信号并控制数据输入/输出。具体地,主机接口113可在主机装置与数据存储装置10之间提供物理连接。此外,主机接口113可根据主机装置的总线格式提供与数据存储装置10的接口。主机装置的总线格式可包括诸如安全数字、通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、个人计算机存储卡国际协会(PCMCIA)、并行高级技术附件(PATA)、串行高级技术附件(SATA)、小型计算机***接口(SCSI)、串行附接SCSI(SAS)、***组件互连(PCI)、高速PCI(PCI-e或PCIe)和通用闪存(UFS)的一个或更多个标准接口协议。
ROM 1151可存储控制器110的操作所需的程序代码(例如,固件或软件)。此外,ROM1151可存储程序代码所使用的代码数据。
RAM 1153可存储控制器110的操作所需的数据或者由控制器110生成的数据。
CPU 111可通过在引导操作期间将存储在存储部120或ROM 1151中的引导代码加载到RAM 1153中来控制数据存储装置10的引导操作。
缓冲管理器117可被配置为管理缓冲存储器130的各个缓冲区域的使用状态。在实施方式中,缓冲管理器117可将缓冲存储器130划分成多个缓冲区域(或槽),并且指派各个缓冲区域以高速缓存数据或者释放所指派的缓冲区域。
在实施方式中,缓冲管理器117可响应于从存储部120传送的编程完成信号来释放高速缓存完全编程的单元数据(例如,数据块)的缓冲区域。所释放的缓冲区域可被指派以存储从主机装置提供的新单元数据(例如,数据块)。
存储器接口119可提供通信信道以用于在控制器110与存储部120之间发送/接收信号。存储器接口119可根据CPU的控制将数据写到存储部120,该数据被高速缓存在缓冲存储器130中。此外,存储器接口119可将从存储部120读取的数据传送到缓冲存储器130以高速缓存该数据。
图3是用于描述根据实施方式的数据存储装置10的操作方法的流程图。
对于高速缓存编程操作,可在步骤S101将命令CMD(例如,80h)、地址ADD和数据DATA从主机装置传送到控制器110。所传送的数据可被高速缓存到缓冲存储器130中。
在步骤S103,控制器110可将高速缓存在缓冲存储器130中的数据传送到存储部120或者实际上传送到存储部120的页缓冲器123。
在步骤S105,存储部120可根据内部控制器(未示出)的控制来执行编程操作以将页缓冲器123的数据存储在与地址ADD对应的存储器单元中。在步骤S107,一旦编程操作S105完成,存储部120就可将编程完成信号传送到控制器110。
在步骤S109,响应于编程完成信号,控制器110可释放高速缓存所编程的数据的缓冲存储器130的缓冲区域并且可从缓冲区域删除完全编程的数据。在步骤S111,从主机装置提供的新单元数据可被存储在已删除编程完成的数据的缓冲存储器130的空的或释放的缓冲区域中。
可在多个晶片之间按照交织方式执行图3所示的编程操作。
可对各个单元数据独立地执行图3所示的编程操作。
图4是用于描述根据实施方式的编程方法的时序图,图5A至图5D是用于描述根据本实施方式的在编程操作期间缓冲存储器130的状态改变的图。
图4以及图5A至图5D示出在两个晶片DIE0和DIE1之间按照交织方式执行编程操作,并且缓冲存储器130将数据高速缓存到五个槽(或缓冲区域)中。
参照图4和图5A,控制器130可将从主机装置提供的第零数据H0至第四数据H4分别存储在缓冲存储器130的槽Slot0至Slot4中。
由于在两个晶片之间按照交织方式执行编程操作,所以第零数据(或数据块)H0和第一数据(或第一数据块)H1可同时被分别编程到第零晶片DIE0和第一晶片DIE1,并且第二数据(或第二数据块)H2和第三数据(或第三数据块)H3可同时被分别编程到第零晶片DIE0和第一晶片DIE1。此外,第四数据(或第四数据块)H4和第五数据(或第五数据块)H5可同时被分别编程到第零晶片DIE0和第一晶片DIE1,并且第六数据(或第六数据块)H6和第七数据(或第七数据块)H7可同时被分别编程到第零晶片DIE0和第一晶片DIE1。这样,可按照交织方式执行编程操作。
根据数据被编程的顺序,将如下进行描述。当缓冲存储器130内的第零槽(或缓冲区域)Slot0的第零数据H0被存储(D0)在第零晶片DIE0的页缓冲器中时,缓冲存储器130内的第一槽(或缓冲区域)Slot1的第一数据H1可几乎同时被存储(D1)在第一晶片DIE1的页缓冲器中。
此外,当第零晶片DIE0内的页缓冲器的第零数据D0被编程(PROG0)到存储器单元阵列时,第一晶片DIE1内的页缓冲器的第一数据D1可同时被编程(PROG1)到存储器单元阵列。
一旦第零数据D0的编程PROG0完成,存储部120就可生成编程完成信号Comp0,并将编程完成信号Comp0传送到控制器110。
如图5B所示,控制器110可响应于第零数据H0的编程完成信号Comp0释放高速缓存第零数据H0的槽(或缓冲区域),并且指派所释放的缓冲区域存储从主机装置新传送的第五数据H5。当第四数据H4被编程到第零晶片DIE0时,第五数据H5可同时被调度以被编程到第一晶片DIE1。
一旦第一数据D1的编程PROG1完成,存储部120就可生成编程完成信号Comp1,并将编程完成信号Comp1传送到控制器110。
如图5C所示,控制器110可响应于第一数据H1的编程完成信号Comp1释放高速缓存第一数据H1的槽(或缓冲区域),并且指派所释放的槽(或缓冲区域)存储从主机装置新传送的第六数据H6。当第七数据H7被编程到第一晶片DIE1时,第六数据H6可同时被调度以被编程到第零晶片DIE0。
类似地,如图5D所示,响应于一旦第二数据D2被完全编程(PROG2)到第零晶片DIE0就生成的编程完成信号Comp2,可从缓冲存储器130删除高速缓存的第二数据H2,并且所释放的槽(或缓冲区域)可被指派以高速缓存作为新单元数据的第七数据H7。当第二数据D2被编程(PROG2)时第三数据D3可同时被编程(PROG3)到第一晶片DIE1,并且响应于一旦第三数据D3被完全编程就生成的编程完成信号Comp3,可从缓冲存储器130删除高速缓存的第三数据H3。
在高速缓存编程模式下,可发生时间延迟(主机开销)。例如,主机装置通过控制器110将数据传送到缓冲存储器130可能需要时间,或者驱动存储部120以将缓冲存储器130的数据编程到存储部120可能需要时间。此外,当控制器110指派槽(或缓冲区域)内部高速缓存单元数据并生成缓冲指派信息时,可发生时间延迟(控制器开销)。这些开销可能成为减少高速缓存编程模式的优势的因素。
在本实施方式中,在先前单元数据被编程到存储器单元阵列中的同时,来自主机装置的新单元数据可被并行高速缓存,这使得可去除主机装置和控制器的开销。因此,在改进写速度的同时,***的整个性能可最大化。
具体地,主机开销是控制器110无法控制的因素。在本实施方式中,由于在先前单元数据被编程的同时执行伴随有主机开销的操作,所以可去除主机开销。
在单元数据被高速缓存的同时发生的主机和控制器开销可能成为破坏晶片之间的交织的因素。然而,在本实施方式中,可去除这些开销以使交织性能最大化。
如上所述,一旦当前单元数据被编程到存储器单元阵列,存储部120就可生成编程完成信号,以便将所生成的编程完成信号报告给控制器110。
图6是用于描述根据实施方式的编程完成报告方法的图。
如图6所示,存储部120可响应于控制器110的状态读命令READ STATUS传送编程完成信号。
控制器110可使用状态读命令READ STATUS来监测存储部120的状态。当控制器110将状态读命令READ STATUS传送到存储部120时,存储部120可输出存储在内部状态寄存器中的状态信息。
状态寄存器可通过多位(m位)输入/输出端口(例如,8位输入/输出端口)来将状态信息提供给控制器110。
在本实施方式中,存储部120可被配置为使用状态寄存器的输出端口中的任一个(例如,多位状态信息中的任一位)输出编程完成信号。
即,一旦页缓冲器的数据被编程到存储器单元阵列,存储部120就可将状态寄存器的特定位的值改变为预设电平。控制器110可向存储部120发出状态读命令READ STATUS,并且基于响应于状态读命令READ STATUS输出的状态信息的特定位的电平来检查编程是否完成。在实施方式中,可基于预设时间点(例如,发出页编程确认命令10h以将页缓冲器的数据输入到存储器单元阵列的时间点)来传送状态读命令READ STATUS。然而,本实施方式不限于此。
图7是用于描述根据实施方式的编程完成报告方法的图。
如图7所示,存储部120可基于内部就绪/繁忙信号Internal RB/、外部就绪/繁忙信号External RB/或其组合生成编程完成信号,并传送所生成的编程完成信号。
在实施方式中,存储部120可将就绪/繁忙信号RB/传送到控制器110,该就绪/繁忙信号RB/具有根据是否正在执行编程和擦除操作确定的逻辑电平。
在实施方式中,存储部120可被配置为在单元数据被完全编程的时间点切换内部就绪/繁忙信号Internal RB/的状态。
即,内部就绪/繁忙信号Internal RB/可在单元数据被编程的同时保持第一逻辑电平(低),然后当单元数据被完全编程(A)时切换。因此,每当第(k-1)单元数据、第k单元数据和第(k+1)单元数据被完全编程时,内部就绪/繁忙信号Internal RB/可切换。
在实施方式中,存储部120可在单元数据被编程的同时以第二逻辑电平输出外部就绪/繁忙信号External RB/,并且每当单元数据被完全编程时输出虚拟信号CBSY。
根据内部就绪/繁忙信号Internal RB/、外部就绪/繁忙信号External RB/或其组合,控制器110可识别出单元数据被完全编程,并且执行缓冲释放和指派。
存储部120报告编程完成的方法不限于上述示例,而是可使用可用于检查存储部120的操作状态的各种方法当中应用和修改的方法。
图8是示出根据实施方式的数据存储***的图。
参照图8,数据存储部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中的至少一个读取的数据。暂时存储在缓冲存储器装置1230中的数据可根据控制器1210的控制被发送到主机装置1100或非易失性存储器装置1220-0至1220-n中的至少一个。
非易失性存储器装置1220-0至1220-n可用作数据存储装置1200的存储介质。非易失性存储器装置1220-0至1220-n可分别通过多个通道CH1至CHn与控制器1210联接。一个或更多个非易失性存储器装置可联接到一个通道。联接到各个通道的非易失性存储器装置可联接到相同的信号总线和数据总线。
电源1240可将通过电源连接器1103输入的电力提供给数据存储装置1200的内部。电源1240可包括辅助电源。当发生突然断电时,辅助电源可供应电力以允许数据存储装置1200正常地终止。辅助电源可包括大容量电容器。
信号连接器1101可根据主机装置1100与数据存储装置1200之间的接口方案由各种类型的连接器配置。
电源连接器1103可根据主机装置1100的电源方案由各种类型的连接器配置。
图9是示出根据实施方式的数据处理***的图。参照图9,数据处理***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读取的数据。暂时高速缓存在缓冲存储器装置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的任一侧。
图10是示出根据实施方式的数据处理***的图。参照图10,数据处理***4000可包括主机装置4100和存储器***4200。
主机装置4100可按照诸如印刷电路板的板的形式配置。尽管未示出,主机装置4100可包括用于执行主机装置的功能的内部功能块。
存储器***4200可按照表面安装型封装的形式配置。存储器***4200可通过焊球4250安装到主机装置4100。存储器***4200可包括控制器4210、缓冲存储器装置4220和非易失性存储器装置4230。
控制器4210可控制存储器***4200的一般操作。控制器4210可按照与如图1至图2所示的控制器110相同的方式配置。
缓冲存储器装置4220可高速缓存要存储在非易失性存储器装置4230中的数据。此外,缓冲存储器装置4220可高速缓存从非易失性存储器装置4230读取的数据。高速缓存在缓冲存储器装置4220中的数据可根据控制器4210的控制被发送到主机装置4100或非易失性存储器装置4230。
非易失性存储器装置4230可用作存储器***4200的存储介质。
图11是示出包括根据实施方式的数据存储装置的网络***的图。参照图11,网络***5000可包括通过网络5500联接的服务器***5300和多个客户端***5410至5430。
服务器***5300可响应于来自多个客户端***5410至5430的请求来服务数据。例如,服务器***5300可存储从多个客户端***5410至5430提供的数据。又如,服务器***5300可将数据提供给多个客户端***5410至5430。
服务器***5300可包括主机装置5100和存储器***5200。存储器***5200可由图1所示的存储器***10、图8所示的数据存储装置1200、图9所示的存储器***3200或图10所示的存储器***4200配置。
图12是示出根据实施方式的数据存储装置中所包括的非易失性存储器装置的框图。参照图12,非易失性存储器装置300可包括存储器单元阵列310、行解码器320、数据读/写块330、列解码器340、电压发生器350和控制逻辑360。
存储器单元阵列310可包括布置在字线WL1至WLm与位线BL1至BLn彼此交叉的区域处的存储器单元MC。
存储器单元阵列310可包括三维存储器阵列。三维存储器阵列具有与半导体基板的平坦表面垂直的方向。此外,三维存储器阵列意指包括NAND串的结构,该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的读操作、写操作和擦除操作。
尽管上面描述了各种实施方式,本领域技术人员将理解,所描述的实施方式仅是示例。因此,本文所描述的数据存储装置、其操作方法以及包括其的存储***不应基于所描述的实施方式来限制。
尽管上面描述了各种实施方式,本领域技术人员将理解,所描述的实施方式仅是示例。因此,本文所描述的数据存储装置、操作方法和存储器***不应基于所描述的实施方式来限制。
尽管出于例示性目的描述了各种实施方式,对于本领域技术人员而言将显而易见的是,在不脱离所附权利要求中限定的本发明的精神和范围的情况下,可进行各种改变和修改。
相关申请的交叉引用
本申请要求2018年9月7日提交的韩国申请号10-2018-0107052的优先权,其整体通过引用并入本文。
Claims (18)
1.一种数据存储装置,该数据存储装置包括:
存储部,该存储部被配置为当数据块被完全编程时生成编程完成信号;
缓冲存储器,该缓冲存储器具有分别被配置为高速缓存多个数据块的多个缓冲区域;以及
控制器,该控制器被配置为:
在所述缓冲存储器中先前高速缓存的数据块被编程到所述存储部的同时,从主机装置接收数据块;
将所接收的数据块高速缓存到所述缓冲存储器中;
响应于所述编程完成信号,从所述缓冲存储器删除所编程的数据块;
从所述主机装置接收新数据块;并且
将所接收的新数据块高速缓存在所述缓冲存储器的空缓冲区域中。
2.根据权利要求1所述的数据存储装置,其中,所述控制器被配置为在先前高速缓存的数据块被编程的同时,高速缓存所接收的新数据块。
3.根据权利要求1所述的数据存储装置,其中,所述存储部包括多个晶片,并且所述多个晶片被配置为同时从所述缓冲存储器接收数据块并对所接收的数据块进行编程。
4.根据权利要求1所述的数据存储装置,其中,所述存储部响应于在预设时间点从所述控制器提供的状态读命令而传送所述编程完成信号。
5.根据权利要求1所述的数据存储装置,其中,所述存储部从内部就绪/繁忙信号、外部就绪/繁忙信号或者所述内部就绪/繁忙信号和所述外部就绪/繁忙信号的组合来生成所述编程完成信号,并传送所生成的编程完成信号。
6.一种数据存储装置,该数据存储装置包括:
存储部;
缓冲存储器,该缓冲存储器被划分成多个缓冲区域;以及
控制器,该控制器被配置为:
将高速缓存在所述缓冲存储器中的数据块传送到所述存储部;
在所传送的数据块被编程的同时将新数据块高速缓存到所述缓冲存储器的空缓冲区域中;
响应于在所传送的数据块被完全编程的时间点从所述存储部提供的编程完成信号,释放高速缓存所传送的数据块的缓冲区域;并且
将所释放的缓冲区域指派为空缓冲区域。
7.一种数据存储装置的操作方法,该数据存储装置包括存储部、缓冲存储器以及被配置为控制与所述存储部的数据交换的控制器,所述操作方法包括以下步骤:
由所述控制器将从主机装置传送的数据块高速缓存到所述缓冲存储器中;
由所述控制器将高速缓存在所述缓冲存储器中的数据块传送到所述存储部以对所述数据块进行编程;
在所传送的数据块被编程的同时,由所述控制器从所述主机装置接收新数据块并将所述新数据块高速缓存到所述缓冲存储器中;
当所传送的数据块被完全编程时由所述存储部生成编程完成信号,并将所生成的编程完成信号提供给所述控制器;
由所述控制器从所述缓冲存储器删除所编程的数据块;以及
由所述控制器指派所编程的数据块被删除的缓冲区域作为所述缓冲存储器的空缓冲区域。
8.根据权利要求7所述的操作方法,该操作方法还包括以下步骤:在传送到所述存储部的高速缓存的数据块被编程的同时,由所述控制器从所述主机装置接收另一新数据块,并将所述另一新数据块高速缓存在所述缓冲存储器的空缓冲区域中。
9.根据权利要求7所述的操作方法,其中,所述存储部包括多个晶片,所述多个晶片被配置为对从所述缓冲存储器分别同时提供的高速缓存的数据块进行编程。
10.根据权利要求7所述的操作方法,其中,传送所述编程完成信号的步骤包括以下步骤:由所述存储部响应于在预设时间点从所述控制器提供的状态读命令来传送所述编程完成信号。
11.根据权利要求7所述的操作方法,其中,传送所述编程完成信号的步骤包括以下步骤:由所述存储部从内部就绪/繁忙信号、外部就绪/繁忙信号或者所述内部就绪/繁忙信号和所述外部就绪/繁忙信号的组合来生成所述编程完成信号,并传送所生成的编程完成信号。
12.一种存储***,该存储***包括:
主机装置;以及
数据存储装置,该数据存储装置包括:
存储部,该存储部被配置为当数据块被完全编程时生成编程完成信号;
缓冲存储器,该缓冲存储器具有分别被配置为高速缓存多个数据块的多个缓冲区域;以及
控制器,该控制器被配置为控制与所述存储部的数据交换,
其中,所述控制器:
在高速缓存在所述缓冲存储器中的数据块被编程到所述存储部的同时,从所述主机装置接收新数据块;
将所接收的数据块高速缓存到所述缓冲存储器中;
响应于所述编程完成信号,从所述缓冲存储器删除所编程的数据块;
从所述主机装置接收另一新数据块;并且
将所述另一新数据块高速缓存在所述缓冲存储器的空缓冲区域中。
13.根据权利要求12所述的存储***,其中,所述控制器被配置为在所述缓冲存储器中高速缓存的数据块被编程到所述存储部的同时,高速缓存所述另一新数据块。
14.根据权利要求12所述的存储***,其中,所述存储部包括多个晶片,所述多个晶片被配置为对从所述缓冲存储器分别同时提供的高速缓存的数据块进行编程。
15.根据权利要求12所述的存储***,其中,所述存储部响应于在预设时间点从所述控制器提供的状态读命令来传送所述编程完成信号。
16.根据权利要求12所述的存储***,其中,所述存储部从内部就绪/繁忙信号、外部就绪/繁忙信号或者所述内部就绪/繁忙信号和所述外部就绪/繁忙信号的组合来生成所述编程完成信号,并传送所生成的编程完成信号。
17.一种存储器***,该存储器***包括:
存储部,该存储部被配置为当数据块被编程时生成编程完成信号;
缓冲存储器,该缓冲存储器具有分别被配置为高速缓存多个数据块的多个缓冲区域;以及
控制器,该控制器被配置为:
在所述缓冲存储器中先前高速缓存的数据块被编程到所述存储部的同时,从主机装置接收数据块以将所接收的数据块高速缓存到所述缓冲存储器中;
响应于所述编程完成信号,删除高速缓存在所述缓冲存储器的缓冲区域中的编程的数据块;并且
指派所编程的数据块被删除的缓冲区域作为所述缓冲存储器的空缓冲区域。
18.根据权利要求17所述的存储器***,其中,所述控制器被配置为将所接收的新数据块高速缓存在所述缓冲存储器的空缓冲区域中。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2018-0107052 | 2018-09-07 | ||
KR1020180107052A KR20200029085A (ko) | 2018-09-07 | 2018-09-07 | 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110888595A true CN110888595A (zh) | 2020-03-17 |
Family
ID=69718814
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910485249.9A Withdrawn CN110888595A (zh) | 2018-09-07 | 2019-06-05 | 数据存储装置、其操作方法以及包括其的存储*** |
Country Status (3)
Country | Link |
---|---|
US (1) | US20200081649A1 (zh) |
KR (1) | KR20200029085A (zh) |
CN (1) | CN110888595A (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210152706A (ko) * | 2020-06-09 | 2021-12-16 | 에스케이하이닉스 주식회사 | 메모리 장치, 메모리 시스템 및 메모리 장치의 동작 방법 |
KR20220121098A (ko) | 2021-02-24 | 2022-08-31 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그 동작 방법 |
CN113934378B (zh) * | 2021-11-01 | 2024-04-19 | 新华三技术有限公司合肥分公司 | 一种数据缓存方法、逻辑装置和电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6658533B1 (en) * | 2000-09-21 | 2003-12-02 | Intel Corporation | Method and apparatus for write cache flush and fill mechanisms |
US20110191525A1 (en) * | 2010-02-04 | 2011-08-04 | Phison Electronics Corp. | Flash memory storage device, controller thereof, and data programming method thereof |
US20130254454A1 (en) * | 2012-03-23 | 2013-09-26 | Kabushiki Kaisha Toshiba | Memory system and bank interleaving method |
CN103996415A (zh) * | 2013-01-18 | 2014-08-20 | 三星电子株式会社 | 非易失性存储器件、存储***及相关控制方法 |
-
2018
- 2018-09-07 KR KR1020180107052A patent/KR20200029085A/ko unknown
-
2019
- 2019-04-26 US US16/396,084 patent/US20200081649A1/en not_active Abandoned
- 2019-06-05 CN CN201910485249.9A patent/CN110888595A/zh not_active Withdrawn
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6658533B1 (en) * | 2000-09-21 | 2003-12-02 | Intel Corporation | Method and apparatus for write cache flush and fill mechanisms |
US20110191525A1 (en) * | 2010-02-04 | 2011-08-04 | Phison Electronics Corp. | Flash memory storage device, controller thereof, and data programming method thereof |
US20130254454A1 (en) * | 2012-03-23 | 2013-09-26 | Kabushiki Kaisha Toshiba | Memory system and bank interleaving method |
CN103996415A (zh) * | 2013-01-18 | 2014-08-20 | 三星电子株式会社 | 非易失性存储器件、存储***及相关控制方法 |
Non-Patent Citations (1)
Title |
---|
刘道福等: "一种无目录的共享高速缓存一致性协议", 《高技术通讯》 * |
Also Published As
Publication number | Publication date |
---|---|
KR20200029085A (ko) | 2020-03-18 |
US20200081649A1 (en) | 2020-03-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110874188B (zh) | 数据存储装置、其操作方法以及具有其的存储*** | |
CN110727394B (zh) | 数据存储装置、该数据存储装置的操作方法以及存储*** | |
CN113515231A (zh) | 数据存储装置及其操作方法 | |
CN111177031B (zh) | 数据存储装置及操作方法和具有数据存储装置的存储*** | |
US20190179694A1 (en) | Data storage device, operating method thereof and storage system including the same | |
CN110390988B (zh) | 数据存储装置、防止读取干扰的操作方法及存储*** | |
KR20190102781A (ko) | 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템 | |
CN110858126A (zh) | 数据存储设备及其操作方法和具有该设备的存储*** | |
CN111414131B (zh) | 数据存储装置、其操作方法和包括其的存储*** | |
US20200310986A1 (en) | Data storage device and operating method thereof, and storage system including the same | |
US20200152274A1 (en) | Data storage apparatus, operating method thereof, and storage system including data storage apparatus | |
CN111258918A (zh) | 数据存储装置及其操作方法、存储*** | |
CN110888595A (zh) | 数据存储装置、其操作方法以及包括其的存储*** | |
US11635896B2 (en) | Method and data storage apparatus for replacement of invalid data blocks due to data migration | |
CN111078129A (zh) | 存储器***及其操作方法 | |
CN111258494B (zh) | 数据存储装置及操作方法、具有数据存储装置的存储*** | |
CN111708480B (zh) | 数据存储装置及其操作方法和控制器 | |
CN111752854A (zh) | 数据存储装置及其操作方法 | |
US20200073701A1 (en) | Data storage device, operation method thereof and storage system having the same | |
US10606509B2 (en) | Data storage device managing write tag, writing operation method thereof, and storage system including the same | |
CN111414314B (zh) | 数据存储装置、其操作方法及其控制器 | |
CN110442302B (zh) | 存储器***及用于操作存储器***的方法 | |
CN113010092A (zh) | 数据存储设备及其操作方法 | |
US20220188008A1 (en) | Data storage apparatus and operation method thereof | |
US11263127B2 (en) | Data storage device, method of operating the same, and controller for the same |
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: 20200317 |