CN112988045A - 数据存储装置及其操作方法 - Google Patents
数据存储装置及其操作方法 Download PDFInfo
- Publication number
- CN112988045A CN112988045A CN202010634191.2A CN202010634191A CN112988045A CN 112988045 A CN112988045 A CN 112988045A CN 202010634191 A CN202010634191 A CN 202010634191A CN 112988045 A CN112988045 A CN 112988045A
- Authority
- CN
- China
- Prior art keywords
- read
- read command
- memory device
- data
- volatile 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/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0613—Improving I/O performance in relation to throughput
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
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)
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
Abstract
本公开涉及一种数据存储装置,该数据存储装置可以包括:非易失性存储器设备,包括通过将多个平面以交错单元划分而配置的多个组;以及控制器,被配置为:当接收当前读取命令时,检查包括当前读取命令的读取区域的组是否被包括在包括先前读取命令的读取操作的组中,以及当前读取命令的读取区域是否扩展到两个或更多个组;并且基于检查结果,控制非易失性存储器设备执行高速缓存读取或交错读取。
Description
相关申请的交叉引用
本申请要求于2019年12月2日向韩国知识产权局提交的申请号为10-2019-0158106的韩国专利申请的优先权,其通过引用整体并入本文。
技术领域
各个实施例总体涉及一种数据存储装置及其操作方法。
背景技术
近来,计算环境的范例已变为可以在任何地方任何时间使用计算机***的普适计算。因此,诸如移动电话、数码相机和笔记本计算机的便携式电子装置的使用已经迅速增长。这样的便携式电子装置通常采用使用存储器装置的数据存储装置。数据存储装置用于存储便携式电子装置中使用的数据。
因为使用存储器装置的数据存储装置没有机械驱动器,因此数据存储装置具有优异的稳定性和耐久性、高信息访问速度和低功耗。具有这些优点的数据存储装置的示例包括USB(通用串行总线)存储装置、具有各种接口的存储卡、UFS(通用闪存)装置和SSD(固态驱动器)。
在数据读取操作期间,执行平面交错的读取操作以提高随机读取的性能,并且执行高速缓存读取操作以提高全页面读取的性能。
由于使用了各种大小的工作负荷,因此需要以各种大小来应用读取操作。
发明内容
各个实施例涉及一种具有增强的读取性能的数据存储装置及其操作方法。
在实施例中,一种数据存储装置可以包括:非易失性存储器设备,包括多个组,每个组包括一个或多个平面,组可以作为各自的交错单元操作;以及控制器,被配置为:当接收当前读取命令时,检查包括当前读取命令的读取区域的当前读取组和包括先前读取命令的读取区域的先前读取组是否完全或部分重叠,以及当前读取命令的读取区域是否扩展到两个或更多个组;并且基于检查结果,控制非易失性存储器设备对当前读取组执行高速缓存读取或交错读取。
在实施例中,提供了一种数据存储装置的操作方法,该数据存储装置包括具有多个组的非易失性存储器设备,每个组包括一个或多个平面,组可以作为各自的交错单元操作,该操作方法包括以下步骤:接收读取命令;检查包括当前读取命令的读取区域的当前读取组和包括先前读取命令的读取区域的先前读取组是否完全或部分重叠,以及当前读取命令的读取区域是否扩展到两个或更多个组;以及基于检查结果,控制非易失性存储器设备对当前读取组执行高速缓存读取或交错读取。
在实施例中,提供了一种控制器的操作方法,该操作方法包括:控制非易失性存储器装置对非易失性存储器装置中的多个组中的两个或更多个上布置的平面执行高速缓存读取操作;以及当先前读取命令的先前组与当前组以平面为单位至少部分地重叠时,控制非易失性存储器装置响应于当前读取命令对多个组中的当前组中布置的平面执行高速缓存读取操作;其中,对多个组中的每一个内布置的一个或多个平面执行交错读取操作;并且其中,不对多个组中的两个或更多个上布置的平面执行交错读取操作。
根据本实施例,数据存储装置及其操作方法可以在读取操作期间选择性地应用交错读取操作和高速缓存读取操作。因此,可以缩短读取操作的整体处理时间,这使得可以期望能够提高数据存储装置的性能。
附图说明
图1为示出根据实施例的数据存储装置的配置的示图。
图2为示出根据实施例的读取命令队列的示例的示图。
图3为用于描述根据实施例的用于决定读取命令的方法的示图。
图4为示出根据实施例的非易失性存储器设备的配置的示图。
图5和6为示出根据实施例的传输读取命令的示例的示图。
图7为用于描述根据实施例的数据存储装置的操作方法的流程图。
图8为用于更详细描述图7的操作方法的一部分的流程图。
图9为示出根据实施例的包括SSD(固态驱动器)的数据处理***的示图。
图10为示出诸如图9的控制器的控制器的配置的示图。
图11为示出根据实施例的包括数据存储装置的数据处理***的示图。
图12为示出根据实施例的包括数据存储装置的数据处理***的示图。
图13为示出根据实施例的包括数据存储装置的网络***的示图。
图14为示出根据实施例的数据存储装置中包括的非易失性存储器设备的框图。
具体实施方式
在下文中,以下通过各个实施例参照附图来描述数据存储装置及其操作方法。然而,本发明的特征和方面可以不同于本文所公开的来进行配置或布置。因此,本发明不限于所公开的实施例。相反,本发明包含落入权利要求范围内的任何所公开的实施例的所有修改和变型。而且,在整个说明书中,对“一个实施例”等的参考不一定仅仅指一个实施例,并且对任何这类短语的不同参考不一定指相同实施例。
图1为示出根据实施例的数据存储装置的配置的示图。
在下文中,将参照图2和图3描述根据本实施例的数据存储装置的配置;其中,图2示出根据本实施例的读取命令队列的示例,图3示出根据本实施例的决定读取命令的方法。
参照图1,数据存储装置10可以存储由诸如移动电话、MP3播放器、膝上型计算机、台式计算机、游戏机、TV或车载信息娱乐***的主机装置(未示出)访问的数据。数据存储装置10也可以称为存储器***。
根据联接到主机装置的接口协议,数据存储装置10可以被制造为各种类型的存储装置中的任意一种。例如,数据存储装置10可以被配置成SSD(固态驱动器),诸如eMMC、RS-MMC或微型MMC的MMC(多媒体卡),诸如迷你SD或微型SD的SD(安全数字)卡,USB(通用串行总线)存储装置,UFS(通用闪存)装置,PCMCIA(个人计算机存储卡国际协会)卡类型的存储装置,PCI(***组件互连)卡类型的存储装置,PCI-E(高速PCI)卡类型的存储装置,CF(紧凑式闪存)卡,智能媒体卡和/或记忆棒。
数据存储装置10可以被制造为各种类型的封装中的任意一种。例如,数据存储装置10可以被制造为POP(堆叠封装)、SIP(***级封装)、SOC(片上***)、MCP(多芯片封装)、COB(板上芯片)、WFP(晶圆级制造封装)和/或WSP(晶圆级堆叠封装)。
具体地,数据存储装置10可以包括非易失性存储器设备100和控制器200。
非易失性存储器设备100可以包括通过将多个平面(图3中的PL0、PL1、PL2、PL3)划分成平面组而配置的多个平面组(图3中的Group 1、Group 2),从而形成各自的交错单元。这种配置将在下文中参照图3和图4详细描述。
非易失性存储器设备100可以根据从控制器200传输的读取命令来执行高速缓存读取或交错读取。下面将更详细地描述该过程。
非易失性存储器设备100可以用作数据存储装置10的存储介质。根据存储器单元,非易失性存储器设备100可以被配置为诸如NAND闪速存储器、NOR闪速存储器、使用铁电电容器的FRAM(铁电随机存取存储器)、使用TMR(隧穿磁阻)层的MRAM(磁性随机存取存储器)、使用硫族化物合金的PRAM(相变随机存取存储器)和/或使用过渡金属氧化物的ReRAM(电阻式随机存取存储器)的各种类型的非易失性存储设备中的任意一种。
非易失性存储器设备100可以包括存储器单元阵列(未示出),该存储器单元阵列具有布置在多条位线(未示出)和多条字线(未示出)之间的各个交叉处的多个存储器单元。例如,存储器单元阵列的存储器单元中的每一个可以是用于存储1位数据的单层单元(SLC)、用于存储2位数据的多层单元(MLC)、用于存储3位数据的三层单元(TLC)或用于存储4位数据的四层单元(QLC)。存储器单元阵列可以包括SLC、MLC、TLC和QLC中的一个或多个。例如,存储器单元阵列可以包括具有二维水平结构的存储器单元或具有三维垂直结构的存储器单元。
当接收读取命令时,控制器200可以检查包括当前读取命令的读取区域的当前读取组与包括先前读取命令的读取区域的先前读取组是否完全或部分重叠,以及当前读取命令的读取区域是否扩展到两个或更多个组,并且基于检查操作的结果控制非易失性存储器设备100执行高速缓存读取或交错读取。在实施例中,当前读取命令的读取区域可以包括一个或多个平面(图3的PL0、PL1、PL2、PL3)。
在本说明书中,读取命令的读取区域是响应于该读取命令从其读取数据的目标存储区域。
在高速缓存读取期间,数据读取操作tR和数据输出操作Dout并行执行。参照图4,数据读取操作tR在存储器单元阵列110中感测数据并将该数据移动到页面缓冲器130,并且数据输出操作Dout从页面缓冲器130将读取数据输出到外部目的地。当数据读取操作tR和数据输出操作Dout并行执行时,这可以指示可以同时执行数据读取操作tR和数据输出操作Dout。包括数据读取操作tR的目标平面的组和包括数据输出操作Dout的目标平面的组可以彼此相同或彼此部分重叠。
在交错读取期间,从存储器单元阵列110感测数据并将该数据移动到页面缓冲器130的数据读取操作tR在一个或多个平面PL0、PL1、PL2、PL3上并行执行。在本实施例中,执行交错读取的一个或多个平面可以属于不同的组。
组可以包括一个或多个平面。组可以用作交错单元,在交错单元内,可以在该交错单元的平面上执行交错读取。存储器单元阵列110的多个平面可以划分为用作交错单元的组。可以在组内的一个或多个平面上执行交错读取。可能无法在不同组内的平面上执行交错读取。另一方面,可以响应于单个读取命令而在不同组中的平面上执行高速缓存读取,该单个读取命令诸如用于从分布在多个平面上的存储块中读取大量数据的单个顺序读取命令。
具体地,组可以由单个平面或多个平面配置。例如,如图4所示,组Group 1可以包括多个平面,即平面PL0和平面PL1,但是仅包括平面PL0。更一般地,根据***配置和预期用途,每个组可以包括一个或多个平面。上述多平面中包括的多个平面可以根据一个读取命令并行地执行数据读取操作tR。
在当前读取组的全部或部分与先前读取组重叠时(即,当连续的读取命令的当前读取组和先前读取组部分或完全重叠时),控制器200可以控制非易失性存储器设备100对当前读取组执行高速缓存读取。
具体地,在当前读取组的部分与先前读取组重叠时,无法执行在相同组内并行执行数据读取操作tR的交错读取操作。因此,控制器200指示非易失性存储器设备100执行高速缓存读取。也就是说,在连续读的读取命令之中的当前读取命令的数据读取操作tR需要与先前读取命令的数据读取操作tR重叠时(例如,在当前读取命令和先前读取命令的数据读取操作均应当在相同目标平面上执行时),无法同时访问作为当前读取操作和先前数据读取操作的共同目标的平面,因此当前读取命令的数据读取操作tR无法与先前读命令的数据读取操作tR并行执行。因此,控制器200指示非易失性存储器设备100对当前读取组执行高速缓存读取。
如图2和图3所示,因为当前读取组和先前读取组不重叠,因此可以响应于读取命令READ CMD 1至READ CMD 4来根据交错方案在平面上执行读取操作。例如,包括作为当前读取命令READ CMD 2的目标的读取区域(平面PL2)的当前读取组Group 2与包括作为先前读取命令READ CMD 1的目标的读取区域(平面PL1)的先前读取组Group 1不重叠。
然而,如图2和图3所示,控制器200可以通过读取命令队列250检查当前读取命令READ CMD 5的当前读取组Group 2和先前读取命令READ CMD 4的先前读取组Group 2。当该检查的结果指示包括作为当前读取命令READ CMD 5的目标的读取区域(平面PL2和PL3)的Group 2与包括作为先前读取命令READ CMD 4的目标的读取区域(平面PL3)的Group 2完全重叠时,控制器200可以控制非易失性存储器设备100对当前读取组Group 2的读取区域(平面PL2和PL3)执行高速缓存读取。
还如图2和图3所示,控制器200可以通过读取命令队列250检查当前读取命令READCMD 7的当前读取组Group 1和Group 2以及先前读取命令READ CMD 6的先前读取组Group1。当检查结果指示包括作为当前读取命令READ CMD 7的目标的读取区域(平面PL1和PL2)的当前读取组Group 1和Group 2与包括作为先前读取命令READ CMD 6的目标的读取区域(平面PL0和PL1)的先前读取组Group 1部分重叠时,控制器200也可以控制非易失性存储器设备100对当前读取组Group 1和Group 2的读取区域(平面PL1和PL2)执行高速缓存读取。
在当前读取命令的读取区域扩展到两个或更多个组时(即,当前读取命令的目标平面设置在两个或更多个组上时),控制器200可以控制非易失性存储器设备100对当前读取组执行高速缓存读取。
当图3基于当前读取命令是READ CMD 7并且不存在先前读取命令READ CMD 6的假设时,控制器200可以控制非易失性存储器设备100根据读取命令READ CMD 7对当前读取组Group 1和Group 2执行高速缓存读取。
在当前读取组和先前读取组不重叠时,控制器200可以控制非易失性存储器设备100对当前读取组执行交错读取。在当前读取组和先前读取组彼此不重叠时,可以通过交错读取分别在当前读取组和先前读取组内的目标平面上并行执行数据读取操作tR。因此,控制器200指示非易失性存储器设备100对当前读取组执行交错读取。
参照图2和图3,控制器200可以通过读取命令队列250检查当前读取命令READ CMD3的当前读取组Group 1和先前读取命令READ CMD2的先前读取组Group 2。当检查结果指示包括当前读取命令READ CMD 3的读取区域(平面PL0)的组Group 1和包括先前读取命令READ CMD 2的读取区域(平面PL2)的组Group 2不重叠时,控制器200可以控制非易失性存储器设备100对当前读取组Group 1执行交错读取。
上述方法可以以相同方式应用于单个当前读取组内的多个平面。例如,控制器200可以通过读取命令队列250检查当前读取命令READ CMD 6的当前读取组Group 1和先前读取命令READ CMD 5的先前读取组Group 2。当检查结果指示包括当前读取命令READ CMD 6的读取区域(平面PL0和PL1)的组Group 1和包括先前读取命令READ CMD 5的读取区域(平面PL2和PL3)的组Group 2时,控制器200可以控制非易失性存储器设备100对当前读取组Group 1执行交错读取。
控制器200可以通过预先存储的读取命令、与各个读取命令匹配的起始地址和长度以及组信息来确定当前读取组和先前读取组是否完全重叠或部分重叠。
参照图5,当仅将交错读取命令连续地传输到非易失性存储器设备100时,控制器200可以顺序地并且重复地传输用于指示非易失性存储器设备100执行将数据从存储器单元阵列110移动到页面缓冲器130的数据读取操作tR的交错读取命令,以及用于指示非易失性存储器设备100执行从页面缓冲器130输出数据的数据输出操作Dout的交错读取命令。
参照图6,控制器200可以传输用于指示非易失性存储器设备100读取第二数据的高速缓存读取命令tR(2),并随后基于图2所示的队列250中的读取命令,检查下一读取命令是高速缓存读取命令还是交错读取命令。基于检查结果,控制器200可以控制非易失性存储器设备100对第三数据执行读取操作tR(3)以作为高速缓存读取,或者对第二数据执行输出操作Dout(2)以作为交错读取。用于检查下一读取命令是高速缓存读取命令还是交错读取命令的排队的读取命令可以存储在读取命令队列250或存储器230中。然而,该读取命令也可以存储在控制器200外部的单独的存储器中。读取命令可以包括关于读取命令是高速缓存读取命令还是交错读取命令的信息。
也就是说,在排队的交错读取命令和高速缓存读取命令之中,控制器200可以决定,指示非易失性存储器设备100根据下一读取命令输出(Dout)通过先前数据读取操作tR读取的数据作为交错读取,还是指示非易失性存储器设备100根据下一读取命令读取(tR)数据作为高速缓存读取。
参照图6,控制器200可以传输作为高速缓存读取(“-高速缓存读取:tR(2)”)的用于指示非易失性存储器设备100读取第二数据的高速缓存读取命令tR(2),并随后检查排队的读取命令之中的下一读取命令。当检查结果指示下一读取命令是交错读取命令时(图6的“A”)时,控制器200可以将命令Dout(2)传输到非易失性存储器设备100以作为交错读取来指示非易失性存储器设备100输出第二数据。
参照图6,当传输用于指示非易失性存储器设备100输出(Dout 1)紧接在第二数据读取操作tR(2)之前的第一数据读取操作tR(1)的第一数据的高速缓存读取命令时,控制器200可以检查第二数据读取操作tR(2)之后的下一读取命令。
控制器200可以传输作为高速缓存读取(“-高速缓存读取:tR(2)”)的用于指示非易失性存储器设备100读取第二数据的高速缓存读取命令tR(2),并随后从排队的读取命令中检查下一读取命令。当检查结果指示下一读取命令是高速缓存读取命令时(图6的“B”)时,控制器200可以将高速缓存读取命令tR(3)传输到非易失性存储器设备100以作为高速缓存读取来指示非易失性存储器设备100读取第三数据。
控制器200可以通过驱动加载在存储器230中的固件或软件来控制数据存储装置10的全部操作。控制器200可以解码并驱动基于代码的指令或算法,例如固件或软件。控制器200可以以硬件或硬件与软件的组合来实施。
控制器200可以包括主机接口210、处理器220、存储器230、存储器接口240和读取命令队列250。虽然未在图1中示出,但是控制器200可以进一步包括ECC(错误校正码)引擎,该ECC引擎通过对从主机装置提供的写入数据执行ECC编码来生成奇偶校验数据,并且使用该奇偶校验数据对从非易失性存储器设备100读取的数据执行ECC解码。ECC引擎可以安装在存储器接口240的内部或外部。
主机接口210可以响应于主机装置的协议来为主机装置和数据存储装置10提供接口。例如,主机接口210可以通过例如USB(通用串行总线)、UFS(通用闪存)、MMC(多媒体卡)、PATA(并行高级技术附件)、SATA(串行高级技术附件)、SCSI(小型计算机***接口)、SAS(串列SCSI)、PCI(***组件互连)和/或PCI-e(高速PCI)的各种协议中的任意一种与主机装置进行通信。
处理器220可以包括MCU(微控制单元)和CPU(中央处理单元)。处理器220可以处理从主机装置传输的请求。为了处理从主机装置传输的请求,处理器220可以驱动加载到存储器230的基于代码的指令或算法,即固件,并控制非易失性存储器设备100以及诸如主机接口210、存储器230和存储器接口240的内部装置的操作。
处理器220可以基于从主机装置传输的请求来生成用于控制非易失性存储器设备100的操作的控制信号,并且通过存储器接口240将所生成的控制信号提供到非易失性存储器设备100。
存储器230可以包括动态RAM(DRAM)或静态RAM(SRAM)。存储器230可以存储由处理器220驱动的固件。此外,存储器230可以存储驱动固件所需的数据,例如元数据。也就是说,存储器230可以用作处理器220的工作存储器。虽然未在图1中示出,但是控制器200可以进一步包括相对于处理器220设置的处理器专用存储器,以便处理器220可以容易地对其进行访问,并且存储器230中存储的固件和元数据可以加载到处理器专用存储器。
存储器230可以包括数据缓冲器,该数据缓冲器用于临时存储将从主机装置传输到非易失性存储器设备100的写入数据或者从非易失性存储器设备100读取并且将传输到主机装置的读取数据。即,存储器230可以用作缓冲存储器。
图1示出存储器230安装在控制器200内部,但是存储器230可以安装在控制器200外部。
存储器接口240可以在处理器220的控制下控制非易失性存储器设备100。当非易失性存储器设备100被配置为NAND闪速存储器时,存储器接口240可以称为FCT(闪存控制顶(Flash Control Top))。存储器接口240可以将由处理器220生成的控制信号传输到非易失性存储器设备100。控制信号可以包括用于控制非易失性存储器设备100的操作的命令、地址和操作控制信号。操作控制信号可以包括芯片使能信号、命令锁存使能信号、地址锁存使能信号、写入使能信号、读取使能信号、数据选通信号等,但是不限于此。存储器接口240可以将写入数据传输到非易失性存储器设备100,或者从非易失性存储器设备100接收读取数据。
存储器接口240和非易失性存储器设备100可以通过多个通道CH1至CHn联接。存储器接口240可以通过多个通道CH1至CHn向非易失性存储器设备100传输诸如命令、地址、操作控制信号和数据(即,写入数据)的信号。存储器接口240可以通过多个通道CH1至CHn从非易失性存储器设备100接收状态信号(例如,就绪/忙碌)和数据(即,读取数据)。
读取命令队列250可以顺序地对从主机装置(未示出)传输并且将传输到非易失性存储器设备100的读取命令进行排队。参照图2,读取命令READ CMD 1、读取命令READ CMD2、读取命令READ CMD 3、读取命令READ CMD 4、读取命令READ CMD 5、读取命令READ CMD 6等可以顺序地在读取命令队列250中排队。每个读取命令可以包括用于指示非易失性存储器设备100执行数据读取操作tR或数据输出操作Dout的内容。
尽管未示出,但是可以针对每个管芯实施读取命令队列250。
图4为示出根据实施例的非易失性存储器设备的配置的示图。
在下文中,将参照图3以及图5和6描述非易失性存储器设备,其中图3为用于描述根据实施例的用于决定读取命令的方法的示图,图5和图6为示出根据实施例的传输读取命令的示例的示图。
参照图4,非易失性存储器设备100可以包括存储器单元阵列110、页面缓冲器130和控制逻辑150。
存储器单元阵列110可以包括能被划分为用作交错单元的组的多个平面。
页面缓冲器130可以存储从多个平面PL0、PL1、PL2、PL3读取的数据。尽管未示出,但是页面缓冲器130可以包括:主页面缓冲器,用于存储从存储器单元阵列110读取的数据;以及高速缓存页面缓冲器,用于存储从主页面缓冲器传输并待输出到外部目的地的数据。
控制逻辑150可以基于从控制器200传输以指示非易失性存储器设备100读取或输出数据的读取命令来控制非易失性存储器设备100的操作。
图7为示出根据实施例的数据存储装置的操作方法的流程图。
上述数据存储装置10可以包括非易失性存储器设备100,该非易失性存储器设备100包括被划分为组的多个平面,每个组包括一个或多个平面。每个组可以用作交错单元。
首先,在步骤S101中,数据存储装置10可以接收从主机装置传输的读取命令。数据存储装置10可以将从主机装置接收的读取命令在图1的读取命令队列250中排队。可以从主机装置接收多个读取命令,并且每个所接收的读取命令保持在读取命令队列250中,直到该命令被传输到非易失性存储器设备100。
随后,在步骤S103中,数据存储装置10可以检查包括当前读取命令的读取区域的当前读取组和包括先前读取命令的读取区域的先前读取组是否完全或部分重叠。当前读取命令的读取区域可以包括一个或多个平面。
当检查结果指示当前读取组和先前读取组不重叠时,则在步骤S105中,数据存储装置10可以检查当前读取命令的读取区域是否扩展到两个或更多个组。
当检查结果指示当前读取命令的读取区域没有扩展到两个或更多个组时,则在步骤S107中,数据存储装置10可以控制非易失性存储器设备100根据当前读取命令执行交错读取操作。
当步骤S103的检查结果指示当前读取组和先前读取组完全或部分重叠时,则在步骤S109中,数据存储装置10可以控制非易失性存储器设备100根据当前读取命令执行高速缓存读取操作。
另一方面,当步骤S105的检查结果指示当前读取命令的读取区域扩展到两个或更多组时,数据存储装置10可以根据当前读取命令控制非易失性存储器设备100执行高速缓存读取操作。
作为参考,在省略步骤S105的情况下,当步骤S103的检查结果指示当前读取组和先前读取组不重叠时,数据存储装置10可以控制非易失性存储器设备100根据当前读取命令执行交错读取操作。
图8为用于更详细描述图7的操作方法的一部分的流程图。
首先,在步骤S201中,数据存储装置10可以将图6的高速缓存读取命令tR(2)传输到非易失性存储器设备100,以指示非易失性存储器设备100读取第二数据。
然后,数据存储装置10可以检查排队的读取命令中的下一读取命令。例如,在步骤S203中,数据存储装置10可以检查下一读取命令是否是高速缓存读取命令。
参照图6,当将高速缓存读取命令Dout(1)传输到非易失性存储器设备100以指示非易失性存储器设备100输出紧接在第二数据读取操作之前的第一数据读取操作的第一数据时,数据存储装置10可以检查第二数据读取操作之后的下一读取命令。
当检查结果指示下一读取命令是高速缓存读取命令时,则在S205中,数据存储装置10可以将高速缓存读取命令传输到非易失性存储器设备100以指示非易失性存储器设备100读取第三数据。
参照图6,数据存储装置10可以在针对第二数据的高速缓存读取操作tR(2)之后通过排队的读取命令来检查下一读取命令。当检查结果指示下一读取命令是高速缓存读取命令(图6的“B”)时,数据存储装置10可以控制非易失性存储器设备100根据第三读取命令执行针对第三数据的高速缓存读取操作tR(3)。
当步骤S203的检查结果指示下一读取命令是交错读取命令(图6的“A”)时,则在步骤S207中,数据存储装置10可以将交错读取命令Dout(2)传输到非易失性存储器设备100以指示非易失性存储器设备100输出第二数据。
参照图6,当在针对第二数据的高速缓存读取操作tR(2)之后传输用于指示非易失性存储器设备100针对第一读取命令输出第一数据的高速缓存读取命令Dout(1)时,数据存储装置10可以检查读取命令队列250以确定下一读取命令是否为交错读取命令。当检查结果指示下一读取命令是交错读取命令时,数据存储装置10可以控制非易失性存储器设备100执行针对第二数据的数据输出操作Dout(2)。
图9为示出根据实施例的包括SSD(固态驱动器)的数据处理***的示图。参照图9,数据处理***2000可以包括主机装置2100和SSD 2200。
SSD 2200可以包括控制器2210、缓冲存储器装置2220、非易失性存储器设备2231至223n、电源2240、信号连接器2250以及电源连接器2260。
控制器2210可以控制SSD 2200的全部操作。
缓冲存储器装置2220可以临时存储待存储在非易失性存储器设备2231至223n中的数据。缓冲存储器装置2220可以临时存储从非易失性存储器设备2231至223n读取的数据。可以在控制器2210的控制下,将临时存储在缓冲存储器装置2220中的数据传输到主机装置2100或非易失性存储器设备2231至223n。
非易失性存储器设备2231至223n可以用作SSD 2200的存储介质。非易失性存储器设备2231至223n可以分别通过多个通道CH1至CHn联接到控制器2210。一个通道可以联接一个或多个非易失性存储器设备。联接到一个通道的非易失性存储器设备可以联接到相同的信号总线以及数据总线。
电源2240可以提供通过电源连接器2260输入到SSD 2200中的电力PWR。电源2240可以包括辅助电源2241。当突然断电发生时,辅助电源2241可以提供电力以正常关闭SSD2200。辅助电源2241可以包括能够存储电力PWR的大电容器。
控制器2210可以通过信号连接器2250与主机装置2100交换信号SGL。信号SGL可以包括命令、地址、数据等。根据主机装置2100和SSD 2200之间的接口,信号连接器2250可以被配置为各种类型的连接器中的任意一种。
图10为示出图9的控制器的配置的示图。参照图10,控制器2210可以包括主机接口2211、控制组件2212、RAM 2213、ECC组件2214和存储器接口2215。
主机接口2211可以根据主机装置2100的协议使主机装置2100和SSD 2200接口连接。例如,主机接口2211可以通过诸如SD(安全数字)、USB(通用串行总线)、MMC(多媒体卡)、eMMC(嵌入式MMC)、PCMCIA(个人计算机存储卡国际协会)、PATA(并行高级技术附件)、SATA(串行高级技术附件)、SCSI(小型计算机***接口)、SAS(串列SCSI)、PCI(***组件互连)、PCI-E(高速PCI)和/或UFS(通用闪存)的各种协议中的任意一种与主机装置2100通信。主机接口2211可以执行用于支持主机装置2100将SSD 2200识别为例如HDD(硬盘驱动器)的通用数据存储装置的磁盘仿真功能。
控制组件2212可以分析和处理从主机装置2100输入的信号SGL。控制组件2212可以根据用于驱动SSD 2200的固件或软件来控制内部功能块的操作。RAM 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为示出根据实施例的包括数据存储装置的数据处理***的示图。参照图11,数据处理***3000可以包括主机装置3100和数据存储装置3200。
主机装置3100可以以例如印刷电路板的板形式来配置。尽管未示出,但是主机装置3100可以包括用于执行主机装置的功能的内部功能块。
主机装置3100可以包括诸如插座、插槽或连接器的连接端子3110。数据存储装置3200可以安装在连接端子3110上。
数据存储装置3200可以以例如印刷电路板的板形式来配置。数据存储装置3200可以称为存储器模块或存储卡。数据存储装置3200可以包括控制器3210、缓冲存储器装置3220、非易失性存储器设备3231和3232、PMIC(电源管理集成电路)3240以及连接端子3250。
控制器3210可以控制数据存储装置3200的全部操作。控制器3210可以以与图10所示的控制器2210相同的方式配置。
缓冲存储器装置3220可以临时存储待存储在非易失性存储器设备3231和3232中的数据。缓冲存储器装置3220可以临时存储从非易失性存储器设备3231和3232读取的数据。可以在控制器3210的控制下,将临时存储在缓冲存储器装置3220中的数据传输到主机装置3100或非易失性存储器设备3231和3232。
非易失性存储器设备3231和3232可以用作数据存储装置3200的存储介质。
PMIC 3240可以将通过连接端子3250输入的电力提供到数据存储装置3200。PMIC3240可以在控制器3210的控制下管理数据存储装置3200的电力。
连接端子3250可以连接到主机装置的连接端子3110。通过连接端子3250,电力以及诸如命令、地址和数据的信号可以在主机装置3100和数据存储装置3200之间传输。根据主机装置3100和数据存储装置3200之间的接口连接方法,连接端子3250可以以各种方式配置。连接端子3250可以设置在数据存储装置3200的任意一侧。
图12为示出根据实施例的包括数据存储装置的数据处理***的示图。参照图12,数据处理***4000可以包括主机装置4100和数据存储装置4200。
主机装置4100可以以例如印刷电路板的板形式来配置。尽管未示出,但是主机装置4100可以包括用于执行主机装置的功能的内部功能块。
数据存储装置4200可以以表面安装封装的形式来配置。数据存储装置4200可以通过焊球4250安装在主机装置4100上。数据存储装置4200可以包括控制器4210、缓冲存储器装置4220以及非易失性存储器设备4230。
控制器4210可以控制数据存储装置4200的全部操作。控制器4210可以以与图10所示的控制器2210相同的方式配置。
缓冲存储器装置4220可以临时存储待存储在非易失性存储器设备4230中的数据。缓冲存储器装置4220可以临时存储从非易失性存储器设备4230读取的数据。可以在控制器4210的控制下,将临时存储在缓冲存储器装置4220中的数据传输到主机装置4100或非易失性存储器设备4230。
非易失性存储器设备4230可以用作数据存储装置4200的存储介质。
图13为示出根据实施例的包括数据存储装置的网络***5000的示图。参照图13,网络***5000可以包括通过网络5500联接的服务器***5300和多个客户端***5410、5420和5430。
服务器***5300可以响应于多个客户端***5410、5420和5430的请求来服务数据。例如,服务器***5300可以存储从多个客户端***5410、5420和5430提供的数据。再例如,服务器***5300可以向多个客户端***5410、5420和5430提供数据。
服务器***5300可以包括主机装置5100和数据存储装置5200。数据存储装置5200可以被配置为图1的数据存储装置10、图9的SSD 2200、图11的数据存储装置3200以及图12的数据存储装置4200。
图14为示出根据实施例的数据存储装置中包括的非易失性存储器设备的框图。参照图14,非易失性存储器设备300可以包括存储器单元阵列310、行解码器320、列解码器330、数据读取/写入块340、电压生成器350以及控制逻辑360。
存储器单元阵列310可以包括布置在字线WL1至WLm与位线BL1至BLn之间的各个交叉处的存储器单元MC。
行解码器320可以通过字线WL1至WLm联接到存储器单元阵列310。行解码器320可以在控制逻辑360的控制下进行操作。行解码器320可以解码从外部装置(未示出)提供的地址。行解码器320可以基于解码结果选择并驱动字线WL1至WLm。例如,行解码器320可以向字线WL1至WLm提供从电压生成器350提供的字线电压。
数据读取/写入块340可以通过位线BL1至BLn联接到存储器单元阵列310。数据读取/写入块340可以包括与各条位线BL1至BLn相对应的读取/写入电路RW1至RWn。数据读取/写入块340可以在控制逻辑360的控制下进行操作。根据操作模式,数据读取/写入块340可以用作写入驱动器或读出放大器。例如,数据读取/写入块340可以用作在写入操作期间将从外部装置提供的数据存储到存储器单元阵列310中的写入驱动器。再例如,数据读取/写入块340可以用作在读取操作期间从存储器单元阵列310读取数据的读出放大器。
列解码器330可以在控制逻辑360的控制下进行操作。列解码器330可以解码从外部装置提供的地址。列解码器330可以基于解码结果,将对应于各条位线BL1至BLn的数据读取/写入块340的读取/写入电路RW1至RWn联接至数据输入/输出线(或数据输入/输出缓冲器)。
电压生成器350可以生成用于非易失性存储器设备300的内部操作的电压。由电压生成器350生成的电压可以施加到存储器单元阵列310的存储器单元。例如,在编程操作期间生成的编程电压可以施加到待执行编程操作的存储器单元的字线。再例如,在擦除操作期间生成的擦除电压可以施加到待执行擦除操作的存储器单元的阱区。又例如,在读取操作期间生成的读取电压可以施加到待执行读取操作的存储器单元的字线。
控制逻辑360可以基于从外部装置提供的控制信号来控制非易失性存储器设备300的全部操作。例如,控制逻辑360可以控制非易失性存储器设备300的操作,诸如该非易失性存储器设备300的读取操作、写入操作和擦除操作。
尽管已经示出和描述了各个实施例,但是本领域技术人员将理解,所描述的实施例仅是示例。因此,本发明不限于所公开的实施例中的任意一个或由其限制。相反地,本发明包含落入权利要求范围内的所有修改和变型。
Claims (17)
1.一种数据存储装置,包括:
非易失性存储器设备,包括多个组,每个组包括一个或多个平面,所述组作为各自的交错单元可操作;以及
控制器,被配置为:
当接收当前读取命令时,检查包括当前读取命令的读取区域的当前读取组和包括先前读取命令的读取区域的先前读取组是否完全或部分重叠,以及所述当前读取命令的所述读取区域是否扩展到两个或更多个组;并且
基于检查结果,控制所述非易失性存储器设备对所述当前读取组执行高速缓存读取或交错读取。
2.根据权利要求1所述的数据存储装置,其中,当包括所述当前读取命令的所述读取区域的组被包括在包括所述先前读取命令的所述读取区域的组的全部或部分中时,所述控制器控制所述非易失性存储器设备执行高速缓存读取。
3.根据权利要求1所述的数据存储装置,其中,当所述当前读取命令的所述读取区域扩展到两个或更多个组时,所述控制器控制所述非易失性存储器设备对所述读取区域执行高速缓存读取。
4.根据权利要求1所述的数据存储装置,其中,当包括所述当前读取命令的所述读取区域的组未被包括在包括所述先前读取命令的所述读取区域的组中时,所述控制器控制所述非易失性存储器设备执行交错读取。
5.根据权利要求1所述的数据存储装置,其中,在传输用于指示所述非易失性存储器设备读取第二数据的高速缓存读取命令之后,所述控制器检查排队的读取命令之中的下一读取命令为高速缓存读取命令还是交错读取命令,并基于检查结果控制所述非易失性存储器设备读取第三数据或输出所述第二数据。
6.根据权利要求5所述的数据存储装置,其中,当所述下一读取命令为交错读取命令时,所述控制器将所述交错读取命令传输至所述非易失性存储器设备,以便指示所述非易失性存储器设备输出所述第二数据。
7.根据权利要求6所述的数据存储装置,其中,当将高速缓存读取命令传输到所述非易失性存储器设备以指示所述非易失性存储器设备输出紧接在第二数据读取操作之前的第一数据读取操作的第一数据时,所述控制器检查所述第二数据读取操作之后的下一读取命令。
8.根据权利要求5所述的数据存储装置,其中,当所述下一读取命令为高速缓存读取命令时,所述控制器将所述高速缓存读取命令传输至所述非易失性存储器设备,以便指示所述非易失性存储器设备读取所述第三数据。
9.根据权利要求1所述的数据存储装置,其中,所述控制器基于排队的读取命令、所述排队的读取命令的起始地址和长度以及组信息来确定包括所述当前读取命令的所述读取区域的组是否被包括在包括所述先前读取命令的所述读取区域的组中。
10.一种数据存储装置的操作方法,所述数据存储装置包括具有多个组的非易失性存储器设备,每个组包括一个或多个平面,所述组作为各自的交错单元可操作,所述操作方法包括以下步骤:
接收读取命令;
检查包括当前读取命令的读取区域的当前读取组和包括先前读取命令的读取区域的先前读取组是否完全或部分重叠,以及所述当前读取命令的所述读取区域是否扩展到两个或更多个组;以及
基于检查结果,控制所述非易失性存储器设备对所述当前读取组执行高速缓存读取或交错读取。
11.根据权利要求10所述的操作方法,其中,控制所述非易失性存储器设备的步骤包括以下步骤:当所述检查结果指示包括所述当前读取命令的所述读取区域的组被包括在包括所述先前读取命令的所述读取区域的组的全部或部分中时,控制所述非易失性存储器设备执行高速缓存读取。
12.根据权利要求10所述的操作方法,其中,控制所述非易失性存储器设备的步骤包括:当所述检查结果指示所述当前读取命令的所述读取区域扩展到两个或更多个组时,控制所述非易失性存储器设备对所述读取区域执行高速缓存读取。
13.根据权利要求10所述的操作方法,其中,控制所述非易失性存储器设备的步骤包括以下步骤:当所述检查结果指示包括所述当前读取命令的所述读取区域的组未被包括在包括所述先前读取命令的所述读取区域的组中时,控制所述非易失性存储器设备执行所述交错读取。
14.根据权利要求10所述的操作方法,其中,控制所述非易失性存储器设备的步骤包括:
传输高速缓存读取命令以指示所述非易失性存储器设备读取第二数据;
检查排队的读取命令之中的下一读取命令;以及
当所述下一读取命令为交错读取命令时,将交错读取命令传输至所述非易失性存储器设备以便指示所述非易失性存储器设备输出所述第二数据。
15.根据权利要求14所述的操作方法,其中,控制所述非易失性存储器设备的步骤包括:当将高速缓存读取命令传输至所述非易失性存储器设备以便指示所述非易失性存储器设备输出紧接在第二数据读取操作之前的第一数据读取操作的第一数据时,检查所述第二数据读取操作之后的下一读取命令。
16.根据权利要求10所述的操作方法,其中,控制所述非易失性存储器设备的步骤包括:
传输高速缓存读取命令以指示所述非易失性存储器设备读取第二数据;
检查排队的读取命令之中的下一读取命令;以及
当所述下一读取命令为高速缓存读取命令时,将高速缓存读取命令传输至所述非易失性存储器设备以便指示所述非易失性存储器设备读取第三数据。
17.一种控制器的操作方法,所述操作方法包括:
控制非易失性存储器装置对所述非易失性存储器装置中的多个组中的两个或更多个上布置的平面执行高速缓存读取操作;以及
当先前读取命令的先前组与当前组以平面为单位至少部分地重叠时,控制所述非易失性存储器装置响应于当前读取命令对多个组之中的所述当前组中布置的平面执行高速缓存读取操作;
其中,对所述多个组中的每一个内布置的一个或多个平面执行交错读取操作;并且
其中,不对所述多个组之中的两个或更多个上布置的平面执行所述交错读取操作。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190158106A KR20210068734A (ko) | 2019-12-02 | 2019-12-02 | 데이터 저장 장치 및 그것의 동작 방법 |
KR10-2019-0158106 | 2019-12-02 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112988045A true CN112988045A (zh) | 2021-06-18 |
Family
ID=76091608
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010634191.2A Withdrawn CN112988045A (zh) | 2019-12-02 | 2020-07-02 | 数据存储装置及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11231882B2 (zh) |
KR (1) | KR20210068734A (zh) |
CN (1) | CN112988045A (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11593001B1 (en) * | 2021-08-02 | 2023-02-28 | Nvidia Corporation | Using per memory bank load caches for reducing power use in a system on a chip |
US11604732B1 (en) * | 2021-09-02 | 2023-03-14 | Micron Technology, Inc. | Memory performance during program suspend protocol |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3920931B2 (ja) * | 1992-04-17 | 2007-05-30 | サン・マイクロシステムズ・インコーポレイテッド | キャッシュされたデータを読出しおよび書込む方法ならびにデータをキャッシングする装置 |
US7280398B1 (en) * | 2006-08-31 | 2007-10-09 | Micron Technology, Inc. | System and memory for sequential multi-plane page memory operations |
KR102664674B1 (ko) | 2016-06-10 | 2024-05-16 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작방법 |
US10621091B2 (en) * | 2018-05-04 | 2020-04-14 | Micron Technology, Inc. | Apparatuses and methods to perform continuous read operations |
KR102569177B1 (ko) * | 2018-11-29 | 2023-08-23 | 에스케이하이닉스 주식회사 | 컨트롤러, 이를 포함하는 메모리 시스템 및 메모리 시스템의 동작 방법 |
-
2019
- 2019-12-02 KR KR1020190158106A patent/KR20210068734A/ko active Search and Examination
-
2020
- 2020-06-23 US US16/909,523 patent/US11231882B2/en active Active
- 2020-07-02 CN CN202010634191.2A patent/CN112988045A/zh not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
US20210165607A1 (en) | 2021-06-03 |
US11231882B2 (en) | 2022-01-25 |
KR20210068734A (ko) | 2021-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10877887B2 (en) | Data storage device and operating method thereof | |
CN107122317B (zh) | 数据存储装置 | |
CN111124273B (zh) | 数据存储装置及数据存储装置的操作方法 | |
US20200218653A1 (en) | Controller, data storage device, and operating method thereof | |
CN109407966B (zh) | 数据存储装置及其操作方法 | |
CN111916140A (zh) | 控制器及其操作方法以及包括控制器的存储器*** | |
CN111752853A (zh) | 控制器、存储器***及其操作方法 | |
CN111752852A (zh) | 数据存储装置及数据存储装置的操作方法 | |
CN112286443A (zh) | 控制器、存储器***及其操作方法 | |
US11231882B2 (en) | Data storage device with improved read performance and operating method thereof | |
US11003395B2 (en) | Controller, memory system, and operating methods thereof | |
US11429612B2 (en) | Address search circuit and method of semiconductor memory apparatus and controller therefor | |
CN110941566B (zh) | 数据存储装置及其操作方法 | |
CN110795366B (zh) | 数据存储装置及数据存储装置的操作方法 | |
US11157401B2 (en) | Data storage device and operating method thereof performing a block scan operation for checking for valid page counts | |
CN111324297B (zh) | 控制器、数据存储装置及数据存储装置的操作方法 | |
CN114579484A (zh) | 数据存储装置及其操作方法 | |
CN114385070A (zh) | 主机、数据存储装置、数据处理***以及数据处理方法 | |
CN112151100A (zh) | 控制器、存储器***及其操作方法 | |
CN111324302B (zh) | 数据存储装置及其操作方法 | |
US11144246B2 (en) | Memory system using available bad block based on data storage reliability and operating method thereof | |
US10572155B2 (en) | Data storage device and operating method thereof | |
US20200117390A1 (en) | Data storage device and operating method thereof | |
CN111913896A (zh) | 控制器、存储器***及其操作方法 | |
CN112395219A (zh) | 数据存储装置、数据处理***及数据存储装置的操作方法 |
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: 20210618 |