CN114968078A - 存储器装置及其操作方法 - Google Patents
存储器装置及其操作方法 Download PDFInfo
- Publication number
- CN114968078A CN114968078A CN202110991619.3A CN202110991619A CN114968078A CN 114968078 A CN114968078 A CN 114968078A CN 202110991619 A CN202110991619 A CN 202110991619A CN 114968078 A CN114968078 A CN 114968078A
- Authority
- CN
- China
- Prior art keywords
- read
- data
- memory device
- memory
- read command
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1405—Saving, restoring, recovering or retrying at machine instruction level
- G06F11/141—Saving, restoring, recovering or retrying at machine instruction level for bus or memory accesses
-
- 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/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/0804—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
-
- 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/0844—Multiple simultaneous or quasi-simultaneous cache accessing
-
- 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/0895—Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0653—Monitoring storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0658—Controller construction arrangements
-
- G—PHYSICS
- 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0619—Improving the reliability of storage systems in relation to data integrity, e.g. data losses, bit errors
-
- 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
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0409—Online test
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0411—Online error correction
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 Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本公开的实施例涉及一种存储器装置及其操作方法。根据本公开的实施例,当针对从存储器控制器输入的多个读取命令之中的第一读取命令发生读取失败时,存储器装置可以以重叠的方式执行针对第一读取命令的读取重试操作以及针对多个读取命令之中的第二读取命令的读取操作。
Description
相关申请的交叉引用
本申请要求于2021年2月18日提交的、申请号为10-2021-0021586的韩国专利申请的优先权,该韩国专利申请通过引用整体并入本文。
技术领域
各个实施例总体上涉及一种存储器装置及其操作方法。
背景技术
存储器系统包括基于来自诸如计算机、服务器、智能电话、平板PC或其它电子装置的主机的请求来存储数据的数据存储装置。存储器系统的示例涵盖从常规的基于磁盘的硬盘驱动器(HDD)到基于半导体的数据存储装置,诸如固态驱动器(SSD)、通用闪存(UFS)装置或嵌入式MMC(eMMC)装置。
存储器系统可以进一步包括用于控制存储器装置的存储器控制器。存储器控制器可以从主机接收命令,并且可以基于接收到的命令来运行命令或者控制对存储器系统中的一个或多个存储器装置的读取/写入/擦除操作。存储器控制器可以用于运行固件操作以执行逻辑运算,从而控制这些操作。
在从存储器装置读取数据的操作期间发生读取失败的情况下,存储器系统可以运行设置的防御算法以正常读取相应的数据。作为示例,存储器系统可以在执行根据设置的防御算法所指定的各种操作的同时,执行读取重试操作以再次读取相应的数据。
发明内容
本公开的各个实施例针对一种存储器装置及其操作方法,其能够在当处理多个读取命令时发生读取失败的情况下使读取性能的降低最小化。
一方面,本公开的实施例可以提供一种存储器装置,其运行从存储器控制器输入的多个读取命令。
存储器装置可以包括:存储器单元阵列;读取/写入电路,被配置为读取存储器单元阵列中存储的数据;以及控制逻辑,被配置为控制读取/写入电路运行从存储器控制器输入的多个读取命令。
当针对多个读取命令之中的第一读取命令发生读取失败时,存储器装置可以以重叠的方式(overlapping manner)执行针对第一读取命令的读取重试操作以及针对多个读取命令之中的第二读取命令的读取操作。
存储器装置可以包括高速缓存缓冲器,该高速缓存缓冲器高速缓存多个读取命令请求读取的数据,并且可以同时执行以下操作:将第一数据高速缓存在高速缓存缓冲器中的操作;以及将第二数据输出到存储器控制器的操作,第一数据为针对第一读取命令的读取重试操作中读取的数据,第二数据为第二读取命令请求读取的数据。
另一方面,本公开的实施例可以提供一种用于操作存储器装置的方法,该存储器装置运行从存储器控制器输入的多个读取命令。
用于操作存储器装置的方法可以包括:监控针对多个读取命令之中的第一读取命令是否已经发生读取失败。
用于操作存储器装置的方法可以包括:当针对第一读取命令已经发生读取失败时,以重叠的方式执行针对第一读取命令的读取重试操作以及针对多个读取命令之中的第二读取命令的读取操作。
另一方面,本公开的实施例可以提供一种存储器装置,该存储器装置包括存储器单元阵列、高速缓存缓冲器和控制逻辑,该存储器单元阵列包括多个页面。
控制逻辑可以从存储器控制器接收与多个页面相关联的多个读取命令。
控制逻辑可以顺序地运行多个读取命令之中的第一读取命令和第二读取命令,以从多个页面之中的第一页面和第二页面读取第一数据和第二数据,并且将第一读取数据和第二读取数据高速缓存在高速缓存缓冲器中。
控制逻辑可以确定针对第一读取数据是否已经发生读取失败。
当确定针对第一读取数据发生读取失败时,控制逻辑可以针对第一页面执行读取重试以读取第一读取数据并将第一读取数据高速缓存在高速缓存缓冲器中,同时将高速缓存在高速缓存缓冲器中的第二读取数据传送到存储器控制器。
根据本公开的实施例,可以在当处理多个读取命令时发生读取失败的情况下,使性能的降低最小化。
附图说明
图1是示出基于本公开的实施例的存储器系统的配置的示意图。
图2是示意性地示出基于本公开的实施例的存储器装置的框图。
图3是示出基于本公开的实施例的存储器装置的字线和位线的结构的示图。
图4是示出基于本公开的实施例的存储器装置的示意性操作的示图。
图5是示出基于本公开的实施例的存储器装置以重叠方式运行两个读取命令的操作的示例的示图。
图6是示出基于本公开的实施例的存储器装置运行读取命令的操作的示例的示图。
图7和图8是示出基于本公开的实施例的存储器装置针对第一读取命令和第二读取命令以重叠方式执行读取重试操作的示例的示图。
图9和图10是示出基于本公开的实施例的存储器装置针对第一读取命令和第三读取命令以重叠方式执行读取重试操作的示例的示图。
图11是示出基于本公开的实施例的存储器装置针对第一读取命令重复执行读取重试操作的示例的示图。
图12是示出基于本公开的实施例的存储器装置针对第一读取命令执行读取重试操作的优先级的示图。
图13是示出基于本公开的实施例的用于操作存储器装置的方法的示图。
图14是示出基于本公开的一些实施例的计算系统的配置的示图。
具体实施方式
在下文中,参照附图详细描述本公开的实施例。在整个说明书中,对“一个实施例”、“另一实施例”等的引用不一定仅针对一个实施例,并且对任何这种短语的不同引用不一定针对相同的实施例。术语“实施例”当在本文使用时不一定指所有实施例。
图1是示出基于本公开的实施例的存储器系统100的示意性配置的示图。
在一些实施方案中,存储器系统100可以包括被配置为存储数据的存储器装置110以及被配置为控制存储器装置110的存储器控制器120。
存储器装置110可以包括多个存储块,每个存储块包括用于存储数据的多个存储器单元。存储器装置110可以被配置为响应于从存储器控制器120接收的控制信号而操作。存储器装置110的操作可以包括例如读取操作、编程操作(也被称为“写入操作”)、擦除操作等。
存储器装置110中的存储器单元用于存储数据,并且可以布置在存储器单元阵列中。存储器单元阵列可以被划分为存储器单元的存储块,并且每个块包括存储器单元的不同页面。在NAND闪速存储器装置的典型实施方案中,存储器单元的页面是可以进行编程或写入的最小存储器单位,并且存储器单元中存储的数据可以以块级(block level)进行擦除。
在一些实施方案中,存储器装置110可以被实施为各种类型,诸如双倍数据速率同步动态随机存取存储器(DDR SDRAM)、第四代低功率双倍数据速率(LPDDR4)SDRAM、图形双倍数据速率(GDDR)SDRAM、低功率DDR(LPDDR)、Rambus动态随机存取存储器(RDRAM)、NAND闪速存储器、垂直NAND闪速存储器、NOR闪速存储器、电阻式随机存取存储器(RRAM)、相变随机存取存储器(PRAM)、磁阻随机存取存储器(MRAM)、铁电随机存取存储器(FRAM)或自旋转移扭矩随机存取存储器(STT-RAM)。
存储器装置110可以以三维阵列结构实施。本公开的一些实施例可应用于具有电荷存储层的任何类型的闪速存储器装置。在实施方案中,电荷存储层可以由导电材料形成,并且这种电荷存储层可以被称为浮栅。在另一实施方案中,电荷存储层可以由绝缘材料形成,并且这种闪速存储器装置可以被称为电荷撷取闪存(CTF)。
存储器装置110可以被配置为从存储器控制器120接收命令和地址,以访问存储器单元阵列的、使用该地址所选择的区域。也就是说,存储器装置110可以对存储器装置的存储器区域执行与接收到的命令相对应的操作,该存储器区域具有与从存储器控制器120接收到的地址相对应的物理地址。
在一些实施方案中,存储器装置110可以执行编程操作、读取操作、擦除操作等。在编程操作期间,存储器装置110可以将数据写入地址所选择的区域。在读取操作期间,存储器装置110可以从地址所选择的存储器区域读取数据。在擦除操作期间,存储器装置110可以擦除地址所选择的存储器区域中存储的数据。
存储器控制器120可以控制对存储器装置110执行的写入操作(编程操作)、读取操作、擦除操作和后台操作。后台操作可以包括例如被实施为优化存储器装置110的整体性能的操作,诸如垃圾收集(GC)操作、损耗均衡(WL)操作和坏块管理(BBM)操作。
在主机的请求下,存储器控制器120可以控制存储器装置110的操作。可选地,当存储器控制器120执行存储器装置的这种后台操作时,即使在没有来自主机的请求的情况下,存储器控制器120也可以控制存储器装置110的操作。
存储器控制器120和主机可以是分开的装置。在一些实施方案中,存储器控制器120和主机可以被集成并实施为单个装置。在下面的描述中,作为示例,将存储器控制器120和主机将作为分开的装置进行讨论。
参照图1,存储器控制器120可以包括主机接口121、存储器接口122和控制电路123。
主机接口121可以被配置为提供用于与主机通信的接口。
当从主机HOST接收命令时,控制电路123可以通过主机接口121接收命令,并且可以执行处理接收到的命令的操作。
存储器接口122可以直接或间接地连接到存储器装置110以提供用于与存储器装置110通信的接口。也就是说,存储器接口122可以被配置为向存储器装置110和存储器控制器120提供接口,以使存储器控制器120基于来自控制电路123的控制信号和指令对存储器装置110执行存储器操作。
控制电路123可以被配置为通过存储器控制器120来控制存储器装置110的操作。例如,控制电路123可以包括处理器124和工作存储器125。控制电路123可以进一步包括错误检测/校正电路(ECC电路)126等。
处理器124可以控制存储器控制器120的全部操作。处理器124可以执行逻辑运算。处理器124可以通过主机接口121与主机HOST通信。处理器124可以通过存储器接口122与存储器装置110通信。
处理器124可以用于执行与闪存转换层(FTL)相关联的操作,以有效地管理对存储器系统100的存储器操作。处理器124可以通过FTL将主机所提供的逻辑块地址(LBA)转换为物理块地址(PBA)。FTL可以接收LBA,并且通过使用映射表将该LBA转换为PBA。
基于映射单位,存在FTL可以采用的各种地址映射方法。典型的地址映射方法可以包括页面映射方法、块映射方法和混合映射方法。
处理器124可以被配置为对从主机接收的数据进行随机化,并将经随机化的数据写入存储器单元阵列。例如,处理器124可以通过使用随机化种子来对从主机接收的数据进行随机化。经随机化的数据被提供到存储器装置110并被写入存储器单元阵列。
处理器124可以被配置为在读取操作期间对从存储器装置110接收的数据进行去随机化。例如,处理器124可以通过使用去随机化种子来对从存储器装置110接收的数据进行去随机化。经去随机化的数据可以被输出到主机HOST。
处理器124可以运行固件(FW)以控制存储器控制器120的操作。处理器124可以控制存储器控制器120的全部操作,并且为了执行逻辑运算,可以在启动期间运行(驱动)被加载到工作存储器125中的固件。
固件是指存储在某个非易失性存储器上的程序或软件,并且在存储器系统100内部运行。
在一些实施方案中,固件可以包括各种功能层。例如,固件可以包括以下中的至少一个:闪存转换层(FTL),被配置为将主机HOST请求中的逻辑地址转换为存储器装置110的物理地址;主机接口层(HIL),被配置为解释主机HOST向诸如存储器系统100的数据存储装置发出的命令,并且将该命令传递到FTL;以及闪存接口层(FIL),被配置为将由FTL发出的命令传递到存储器装置110。
例如,固件可以被存储在存储器装置110中,然后被加载到工作存储器125中。
工作存储器125可以存储操作存储器控制器120所必需的固件、程序代码、命令或多条数据。工作存储器125可以包括例如静态RAM(SRAM)、动态RAM(DRAM)和同步RAM(SDRAM)中的至少一个作为易失性存储器。
错误检测/校正电路126可以被配置为通过使用错误检测和校正码来对数据中的一个或多个错误位进行检测和校正。在一些实施方案中,经受错误检测和校正的数据可以包括工作存储器125中存储的数据以及从存储器装置110检索的数据。
错误检测/校正电路126可以被实施为通过使用错误校正码来对数据进行解码。错误检测/校正电路126可以通过使用各种解码方案来实施。例如,可以使用执行非系统代码解码的解码器或执行系统代码解码的解码器。
在一些实施方案中,错误检测/校正电路126可以基于扇区来检测一个或多个错误位。也就是说,每条读取数据可以包括多个扇区。在本公开中,扇区可以指小于闪速存储器的读取单位(例如,页面)的数据单位。构成每条读取数据的扇区可以基于地址进行映射。
在一些实施方案中,错误检测/校正电路126可以逐个扇区地计算位错误率(BER),并且确定数据中的错误位的数量是否在错误校正能力之内。例如,如果BER高于参考值,则错误检测/校正电路126可以确定相应扇区中的错误位是不可校正的,并且将相应扇区标记为“失败”。如果BER小于或等于参考值,则错误检测/校正电路126可以确定相应扇区是可校正的,或者可以将相应扇区标记为“通过”。
错误检测/校正电路126可以对所有的读取数据依次地执行错误检测和校正操作。当读取数据中包括的扇区是可校正的时,错误检测/校正电路126可以前进到下一个扇区,以检查是否需要对下一个扇区进行错误校正操作。在以这种方式完成对所有读取数据的错误检测和校正操作之后,错误检测/校正电路126可以获取关于读取数据中的哪个扇区被认为是不可校正的信息。错误检测/校正电路126可以将这种信息(例如,不可校正位的地址)提供到处理器124。
存储器系统100还可以包括总线127,以在存储器控制器120的组成元件121、122、124、125和126之间提供通道。总线127可以包括例如用于传递各种类型的控制信号和命令的控制总线以及用于传递各种类型数据的数据总线。
作为示例,图1示出了存储器控制器120的上述组成元件121、122、124、125和126。注意的是,可以省略附图所示的那些元件中的一些,或者可以将存储器控制器120的上述组成元件121、122、124、125和126中的一些集成到单个元件中。另外,在一些实施方案中,可以将一个或多个其它组成元件添加到存储器控制器120的上述组成元件中。
图2是示意性地示出基于本公开的实施例的存储器装置110的框图。
在一些实施方案中,本公开的存储器装置110可以包括存储器单元阵列210、地址解码器220、读取/写入电路230、控制逻辑240和电压生成电路250。
存储器单元阵列210可以包括多个存储块BLK1至BLKz,其中z是大于或等于2的自然数。
在多个存储块BLK1至BLKz中,可以按行和列设置多个字线WL和多个位线BL,并且可以布置多个存储器单元MC。
多个存储块BLK1至BLKz可以通过多个字线WL连接到地址解码器220。多个存储块BLK1至BLKz可以通过多个位线BL连接到读取/写入电路230。
多个存储块BLK1至BLKz中的每一个可以包括多个存储器单元。例如,多个存储器单元是非易失性存储器单元。在一些实施方案中,这种非易失性存储器单元可以以垂直沟道结构布置。
存储器单元阵列210可以被配置为具有二维结构的存储器单元阵列。在一些实施方案中,存储器单元阵列210可以以三维结构布置。
存储器单元阵列210中包括的多个存储器单元中的每一个可以存储至少一位数据。例如,存储器单元阵列210中包括的多个存储器单元中的每一个可以是被配置为存储一位数据的单层单元(SLC)。作为另一示例,存储器单元阵列210中包括的多个存储器单元中的每一个可以是被配置为每个存储器单元存储两位数据的多层单元(MLC)。作为另一示例,存储器单元阵列210中包括的多个存储器单元中的每一个可以是被配置为每个存储器单元存储三位数据的三层单元(TLC)。作为另一示例,存储器单元阵列210中包括的多个存储器单元中的每一个可以是被配置为每个存储器单元存储四位数据的四层单元(QLC)。作为另一示例,存储器单元阵列210可以包括多个存储器单元,多个存储器单元中的每一个可以被配置为每个存储器单元存储至少五位数据。
参照图2,地址解码器220、读取/写入电路230、控制逻辑240和电压生成电路250可以作为被配置为驱动存储器单元阵列210的外围电路进行操作。
地址解码器220可以通过多个字线WL连接到存储器单元阵列210。
地址解码器220可以被配置为响应于控制逻辑240的命令和控制信号而操作。
地址解码器220可以通过存储器装置110内部的输入/输出缓冲器(未示出)来接收地址。地址解码器220可以被配置为对接收到的地址之中的块地址进行解码。地址解码器220可以基于解码后的块地址选择至少一个存储块。
地址解码器220可以从电压生成电路250接收读取电压Vread和通过电压Vpass。
在读取操作期间,地址解码器220可以将读取电压Vread施加到所选择的存储块内部的所选择的字线WL,并且将通过电压Vpass施加到其余未选择的字线WL。
在编程验证操作期间,地址解码器220可以将电压生成电路250所生成的验证电压施加到所选择的存储块内部的所选择的字线WL,并且可以将通过电压Vpass施加到其余未选择的字线WL。
地址解码器220可以被配置为对接收到的地址之中的列地址进行解码。地址解码器220可以将解码后的列地址传输到读取/写入电路230。
存储器装置110可以逐个页面地执行读取操作和编程操作。在请求读取操作和编程操作时接收到的地址可以包括块地址、行地址和列地址中的至少一个。
地址解码器220可以基于块地址和行地址选择一个存储块和一个字线。列地址可以由地址解码器220解码并被提供到读取/写入电路230。
地址解码器220可以包括块解码器、行解码器、列解码器和地址缓冲器中的至少一个。
读取/写入电路230可以包括多个页面缓冲器PB。当存储器单元阵列210执行读取操作时,读取/写入电路230可以作为“读取电路”进行操作,并且当存储器单元阵列210执行写入操作时,读取/写入电路230可以作为“写入电路”进行操作。
上述读取/写入电路230也被称为页面缓冲器电路或数据寄存器电路,该页面缓冲器电路包括多个页面缓冲器PB。读取/写入电路230可以包括参与数据处理功能的数据缓冲器,并且在一些实施方案中,可以进一步包括用于数据高速缓存的高速缓存缓冲器。
多个页面缓冲器PB可以通过多个位线BL连接到存储器单元阵列210。为了在读取操作和编程验证操作期间检测或感测存储器单元的阈值电压Vth,多个页面缓冲器PB可以向连接到存储器单元的位线BL连续地供应感测电流,以在感测节点处检测与根据相应存储器单元的编程状态而变化的电流的量成比例的变化,并且可以将相应的电压保持或锁存为感测数据。
读取/写入电路230可以响应于从控制逻辑240输出的页面缓冲器控制信号而操作。
在读取操作期间,读取/写入电路230感测存储器单元的电压值,并且读出该电压值作为数据。读取/写入电路230临时存储检索到的数据,并且将数据DATA输出到存储器装置110的输入/输出缓冲器。在实施例中,除了页面缓冲器PB或页面寄存器之外,读取/写入电路230还可以包括列选择电路。
控制逻辑240可以连接到地址解码器220、读取/写入电路230和电压生成电路250。控制逻辑240可以通过存储器装置110的输入/输出缓冲器接收命令CMD和控制信号CTRL。
控制逻辑240可以被配置为响应于控制信号CTRL而控制存储器装置110的全部操作。控制逻辑240可以输出用于将多个页面缓冲器PB的感测节点的电压电平调节至预充电电压电平的控制信号。
控制逻辑240可以控制读取/写入电路230对存储器单元阵列210执行读取操作。电压生成电路250可以响应于从控制逻辑240输出的电压生成电路控制信号,生成在读取操作期间使用的读取电压Vread和通过电压Vpass。
存储器装置110中包括的存储块BLK可以包括多个页面PG。在一些实施方案中,按列布置的多个存储器单元形成存储器单元串,并且按行布置的多个存储器单元形成存储块。多个页面PG中的每一个联接到字线WL中的一个,并且存储器单元串STR中的每一个联接到位线BL中的一个。
在存储块BLK中,多个字线WL和多个位线BL可以按行和列布置。例如,多个字线WL中的每一个可以沿行方向布置,并且多个位线BL中的每一个可以沿列方向布置。作为另一示例,多个字线WL中的每一个可以沿列方向布置,并且多个位线BL中的每一个可以沿行方向布置。
在一些实施方案中,多个字线WL和多个位线BL可以彼此相交,从而在多个存储器单元MC的阵列中寻址单个存储器单元。在一些实施方案中,每个存储器单元MC可以包括晶体管TR,该晶体管TR包括可以保持电荷的材料层。
例如,每个存储器单元MC中布置的晶体管TR可以包括漏极、源极和栅极。晶体管TR的漏极(或源极)可以直接地或经由另一晶体管TR连接到相应的位线BL。晶体管TR的源极(或漏极)可以直接地或经由另一晶体管TR连接到源极线(其可以接地)。晶体管TR的栅极可以包括由绝缘体围绕的浮栅(FG)和从字线WL施加栅极电压的控制栅极(CG)。
在多个存储块BLK1至BLKz的每一个中,第一选择线(也被称为源极选择线或漏极选择线)可以被另外布置在两个最外字线之中更靠近读取/写入电路230的第一最外字线的外侧,并且第二选择线(也被称为漏极选择线或源极选择线)可以被另外布置在另一第二最外字线的外侧。
在一些实施方案中,可以在第一最外字线和第一选择线之间另外布置至少一个虚设字线。另外,可以在第二最外字线和第二选择线之间另外布置至少一个虚设字线。
可以逐个页面地执行对存储块的读取操作和编程操作(写入操作),并且可以逐个存储块地执行擦除操作。
图3是示出基于本公开的实施例的存储器装置110的字线WL和位线BL的结构的示图。
参照图3,存储器装置110具有布置存储器单元MC的内核区域,以及包括用于执行存储器单元阵列210的操作的电路的辅助区域(除了内核区域以外的其余区域)。
在内核区域中,沿一个方向布置的一定数量的存储器单元可以被称为“页面”PG,并且串联联接的一定数量的存储器单元可以被称为“存储器单元串”STR。
字线WL1至WL9可以连接到行解码器310。位线BL可以连接到列解码器320。对应于图2的读取/写入电路230的数据寄存器330可以存在于多个位线BL和列解码器320之间。
多个字线WL1至WL9可以对应于多个页面PG。
例如,如图3所示,多个字线WL1至WL9中的每一个可以对应于一个页面PG。当多个字线WL1至WL9中的每一个的大小较大时,多个字线WL1至WL9中的每一个可以对应于至少两个(例如,两个或四个)页面PG。每个页面PG是编程操作和读取操作中的最小单位,并且当进行编程操作和读取操作时,相同页面PG内的所有存储器单元MC可以同时执行操作。
多个位线BL可以连接到列解码器320。在一些实施方案中,可以将多个位线BL划分为奇数编号位线BL和偶数编号位线BL,使得一对奇数编号位线和偶数编号位线共同联接到列解码器320。
在访问存储器单元MC时,使用行解码器310和列解码器320以基于地址来定位期望的存储器单元。
在一些实施方案中,因为存储器装置110进行的、包括编程操作和读取操作的所有数据处理都经由数据寄存器330发生,所以数据寄存器330起着重要的作用。如果数据寄存器330进行的数据处理被延迟,则所有的其它区域都需要等待,直到数据寄存器330完成数据处理,这降低了存储器装置110的整体性能。
参照图3所示的示例,在一个存储器单元串STR中,多个晶体管TR1至TR9可以分别连接到多个字线WL1至WL9。在一些实施方案中,多个晶体管TR1至TR9对应于存储器单元MC。在该示例中,多个晶体管TR1至TR9包括控制栅极CG和浮栅FG。
多个字线WL1至WL9包括两个最外字线WL1和WL9。第一选择线DSL可以另外布置在第一最外字线WL1的外侧,与另一最外字线WL9相比,该第一最外字线WL1更靠近数据寄存器330并具有更短的信号路径。第二选择线SSL可以另外布置在另一第二最外字线WL9的外侧。
由第一选择线DSL控制以导通/关断的第一选择晶体管D-TR具有连接到第一选择线DSL的栅电极,但是不包括浮栅FG。由第二选择线SSL控制以导通/关断的第二选择晶体管S-TR具有连接到第二选择线SSL的栅电极,但是不包括浮栅FG。
第一选择晶体管D-TR用作开关电路,该开关电路将相应的存储器单元串STR连接到数据寄存器330。第二选择晶体管S-TR用作开关,该开关将相应的存储器单元串STR连接到源极线SL。也就是说,第一选择晶体管D-TR和第二选择晶体管S-TR可以用于启用或停用相应的存储器单元串STR。
在一些实施方案中,存储器系统100向第一选择晶体管D-TR的栅电极施加预定的导通电压Vcc,从而导通第一选择晶体管D-TR,并且向第二选择晶体管S-TR的栅电极施加预定的关断电压(例如,0V),从而关断第二选择晶体管S-TR。
在读取操作或验证操作期间,存储器系统100导通第一选择晶体管D-TR和第二选择晶体管S-TR两者。因此,在读取操作或验证操作期间,电流可以流经相应的存储器单元串STR并流到对应于地的源极线SL,从而可以测量位线BL的电压电平。然而,在读取操作期间,第一选择晶体管D-TR和第二选择晶体管S-TR之间的通/断定时可能存在时间差。
在擦除操作期间,存储器系统100可以通过源极线SL向衬底施加预定的电压(例如,+20V)。在擦除操作期间,存储器系统100施加一定的电压以允许第一选择晶体管D-TR和第二选择晶体管S-TR两者浮置。因此,所施加的擦除电压可以从所选择的存储器单元的浮栅FG中移除电荷。
图4是示出基于本公开的实施例的存储器装置110的示意性操作的示图。
参照图4,存储器装置110可以从存储器控制器120接收多个读取命令RCMD。多个读取命令RCMD可以是请求存储器装置110读取存储器装置110中包括的不同页面中存储的数据的命令。存储器装置110可以从存储器控制器120单独地接收与多个读取命令RCMD中的每一个所请求读取的数据相关联的地址。
与多个读取命令RCMD请求读取的数据相关联的地址值可以是例如顺序增加或减少的值。因此,多个读取命令RCMD之中的、第(N+1)次(其中N是自然数)输入到存储器装置110的读取命令RCMD请求读取的数据所存储的地址可以与多个读取命令RCMD之中的、第N次输入到存储器装置110的读取命令RCMD请求读取的数据所存储的地址连续。通过接收多个读取命令RCMD,存储器装置110可以读取顺序增加或减少的连续地址中存储的数据。
存储器装置110可以运行从存储器控制器120接收的多个读取命令RCMD。进一步地,存储器装置110可以将对应于多个运行的读取命令RCMD中的每一个的读取数据RDATA输出到存储器控制器120。
存储器装置110可以逐个顺序地运行多个读取命令RCMD。可选地,存储器装置110可以以重叠的方式运行多个读取命令RCMD之中的两个不同的读取命令。
当存储器装置110逐个顺序地运行多个读取命令RCMD时,存储器装置110可以接收多个读取命令RCMD之中的一个读取命令RCMD,可以从相应读取命令RCMD请求读取的数据所存储的地址读取数据,并且可以将读取数据输出到存储器控制器120。当将读取数据输出到存储器控制器120的操作完成时,存储器装置110可以执行处理多个读取命令RCMD中的另一个的操作。因此,存储器装置110逐个处理读取命令RCMD的操作可以被称为正常读取操作。
另一方面,当存储器装置110以重叠方式运行多个读取命令RCMD之中的两个不同读取命令RCMD时,存储器装置110可以针对两个读取命令RCMD中的一个执行一部分读取操作,同时可以针对两个读取命令RCMD中的另一个执行一部分读取操作。
在下文中,将参照图5描述存储器装置110以重叠方式运行读取命令的操作的示例。
图5是示出基于本公开的实施例的存储器装置110以重叠方式运行两个读取命令的操作的示例的示图。图5的操作可以在图2中的控制逻辑240的控制下执行。
参照图5,存储器装置110可以包括能够高速缓存输入的读取命令请求读取的数据的高速缓存缓冲器CBUF。高速缓存缓冲器CBUF可以临时存储输入的读取命令请求读取的数据,然后可以将临时存储的数据输出到存储器控制器120。
高速缓存缓冲器CBUF可以是例如上面参照图2描述的页面缓冲器PB,或者是能够高速缓存数据的单独的易失性存储器(例如,SRAM、DRAM或SDRAM)。高速缓存缓冲器CBUF可以以页面为单位高速缓存数据。
当针对读取命令执行读取操作时,存储器装置110可以首先读取存储器装置110中的页面中存储的数据,然后将读取数据高速缓存在高速缓存缓冲器CBUF中(①tR)。
进一步地,存储器装置110可以将高速缓存在高速缓存缓冲器CBUF中的数据输出到存储器控制器120(②dout)。
此时,在执行将存储器装置110中的页面中存储的数据高速缓存在高速缓存缓冲器CBUF中的操作①时,存储器装置110可以同时执行将预先存储在高速缓存缓冲器CBUF中的另一数据输出到存储器控制器120的操作②。
也就是说,存储器装置110可以通过同时执行以下操作来以重叠方式运行两个读取命令:1)将两个读取命令中的一个所请求读取的数据高速缓存在高速缓存缓冲器CBUF中;以及2)将两个读取命令中的另一个所请求读取的数据输出到存储器控制器120。因此,存储器装置110以重叠方式运行两个读取命令的操作可以被称为高速缓存读取操作。
因此,通过以重叠方式运行两个读取命令,存储器装置110可以更快地处理多个输入的读取命令。这是因为,当存储器装置110将预先存储在高速缓存缓冲器CBUF中的数据输出到存储器控制器120时,不会中断运行另一读取命令的操作。
图6是示出基于本公开的实施例的存储器装置110运行读取命令的操作的示例的示图。图6的操作可以在图2中的控制逻辑240的控制下执行。
参照图6,当在针对从存储器控制器120接收的多个读取命令之中的第一读取命令RCMD1的读取操作期间发生读取失败时,存储器装置110可以根据存储器控制器120的请求,执行针对第一读取命令RCMD1的读取重试(RR)操作。例如,当执行针对第一读取命令RCMD1的读取重试操作时,在改变特定设置值(例如,读取重试操作中使用的读取电压的数量/幅度)之后,存储器装置110可以再次读取第一读取命令RCMD1请求读取的数据。
为了执行针对第一读取命令RCMD1的读取重试操作,存储器装置110可以例如从存储器控制器120接收请求针对第一读取命令RCMD1的读取重试操作的命令。在这种情况下,存储器装置110可以向存储器控制器120传输已经发生针对第一读取命令RCMD1的读取失败的响应,使得存储器控制器120可以生成请求针对第一读取命令RCMD1的读取重试操作的命令。
作为另一示例,当在针对第一读取命令RCMD1的读取操作期间发生读取失败时,存储器装置110可以自行执行针对第一读取命令RCMD1的读取重试操作。在这种情况下,存储器装置110不需要向存储器控制器120传输已经发生针对第一读取命令RCMD1的读取失败的响应。
存储器装置110可以不仅仅执行上述针对第一读取命令RCMD1的读取重试操作。相反,以与针对从存储器控制器120接收的多个读取命令之中的另一读取命令的读取操作重叠的方式,存储器装置110可以执行针对第一读取命令RCMD1的读取重试操作。
在图6中,存储器装置110可以以重叠方式执行针对第一读取命令RCMD1的读取重试(RR)操作以及针对第二读取命令RCMD2的读取操作。因此,即使在针对第一读取命令RCMD1的读取操作期间发生读取失败时,存储器装置110也不会中断以重叠方式执行读取操作。
这样,存储器装置110以重叠方式执行针对第一读取命令RCMD1的读取重试操作以及针对第二读取命令RCMD2的读取操作的原因如下。
如果存储器装置110仅仅执行针对第一读取命令RCMD1的读取重试操作,而不是以与针对另一读取命令的读取操作重叠的方式执行针对第一读取命令RCMD1的读取重试操作,则可以不在执行针对第一读取命令RCMD1的读取重试操作的同时执行针对另一读取命令的读取操作,而是可以在针对第一读取命令RCMD1的读取重试操作完成之后执行针对另一读取命令的读取操作。因此,作为通过以重叠方式运行不同读取命令所获得的效果,存储器装置110无法提高读取性能。
因此,通过以与针对另一读取命令的读取操作重叠的方式也执行针对第一读取命令RCMD1的读取重试操作,即使当发生读取失败时,存储器装置110也可以防止整体读取性能降低。
然而,当存储器装置110执行针对第一读取命令RCMD1的读取重试操作时,在没有可以以与针对第一读取命令RCMD1的读取重试操作重叠的方式运行的其它读取命令的情况下,存储器装置110可以仅仅执行针对第一读取命令RCMD1的读取重试操作,而不等待待以重叠方式运行的另一读取命令。
图7和图8是示出基于本公开的实施例的存储器装置110针对第一读取命令RCMD1和第二读取命令RCMD2以重叠方式执行读取重试(RR)操作的示例的示图。图7和图8的操作可以在图2中的控制逻辑240的控制下执行。
参照图7,在存储器装置110执行针对第一读取命令RCMD1的读取操作时已经发生读取失败。此时,存储器装置110正在执行将第二读取命令RCMD2请求读取的数据高速缓存在高速缓存缓冲器CBUF中的操作。
此后,存储器装置110可以同时执行以下操作:将针对第一读取命令RCMD1的读取重试(RR)操作中读取的数据高速缓存在高速缓存缓冲器CBUF中的操作(tR);以及将第二读取命令RCMD2请求读取的数据输出到存储器控制器120的操作(dout)。
在下文中,将参照图8描述存储器装置110执行上面参照图7描述的操作的进程。
参照图8,在针对第一读取命令RCMD1的读取重试(RR)操作中,存储器装置110从存储器装置110中的页面读取数据,并将第一数据DATA_1作为读取数据高速缓存在高速缓存缓冲器CBUF中(①tR)。
此时,作为第二读取命令RCMD2请求读取的数据的第二数据DATA_2可以处于其被预先存储在高速缓存缓冲器CBUF中的状态。在执行针对第一读取指令RCMD1的读取重试操作之前,存储器装置110处于已经执行高速缓存第二数据DATA_2的操作的状态。
存储器装置110可以与将第一数据DATA_1高速缓存在高速缓存缓冲器CBUF中的操作同时执行将预先存储在高速缓存缓冲器CBUF中的第二数据DATA_2输出到存储器控制器120的操作(②dout)。
此外,存储器装置110可以以不仅与第二读取命令RCMD2而且与另一读取命令重叠的方式执行针对第一读取命令RCMD1的读取重试操作。
图9和图10是示出基于本公开的实施例的存储器装置110针对第一读取命令RCMD1和第三读取命令RCMD3以重叠方式执行读取重试(RR)操作的示例的示图。图9和图10的操作可以在图2中的控制逻辑240的控制下执行。
参照图9,存储器装置110可以同时执行以下操作:将针对第一读取命令RCMD1的读取重试操作中读取的数据高速缓存在高速缓存缓冲器CBUF中的操作(tR);以及将第二读取命令RCMD2请求读取的数据输出到存储器控制器120的操作(dout)。
此后,存储器装置110可以同时执行以下操作:将针对第一读取命令RCMD1的读取重试操作中读取的数据输出到存储器控制器120的操作(dout);以及将从存储器控制器120输入的多个读取命令之中的第三读取命令RCMD3请求读取的数据高速缓存在高速缓存缓冲器CBUF中的操作(tR)。
在下文中,将参照图10描述存储器装置110执行上面参照图9描述的操作的进程。
参照图10,在针对第三读取命令RCMD3的读取操作中,存储器装置110从存储器装置110中的页面读取数据,并将第三数据DATA_3作为读取数据高速缓存在高速缓存缓冲器CBUF中(①tR)。
此时,作为针对第一读取命令RCMD1的读取重试操作中读取的数据,第一数据DATA_1处于其被预先存储在高速缓存缓冲器CBUF中的状态。存储器装置110可以同时执行以下操作:将第三数据DATA_3高速缓存在高速缓存缓冲器CBUF中的操作;以及将预先存储在高速缓存缓冲器CBUF中的第一数据DATA_1输出到存储器控制器120的操作(②dout)。
以这种方式,通过以与针对另一读取命令的读取操作重叠的方式执行针对第一读取命令RCMD1的读取重试操作,即使在针对第一读取命令RCMD1发生读取失败的情况下,存储器装置110也可以防止读取性能降低。
图11是示出基于本公开的实施例的存储器装置110重复执行针对第一读取命令RCMD1的读取重试操作的示例的示图。图11的操作可以在图2中的控制逻辑240的控制下执行。
参照图11,存储器装置110可以重复执行针对第一读取命令RCMD1的读取重试操作,直到针对第一读取命令RCMD1的读取重试操作成功。
在图11中,当在针对第一读取命令RCMD1的读取操作期间发生读取失败时,存储器装置110可以执行针对第一读取命令RCMD1的读取重试操作。
在针对第一读取命令RCMD1的读取重试操作期间再次发生读取失败的情况下,存储器装置110可以针对第一读取命令RCMD1重新执行读取重试操作。
同时,在重复执行针对第一读取命令RCMD1的读取重试操作时,存储器装置110可以以重叠的方式同时运行从存储器控制器120输入的另一读取命令,从而使由于读取失败而导致的读取性能降低最小化。
图12是示出基于本公开的实施例的存储器装置110执行针对第一读取命令RCMD1的读取重试(RR)操作的优先级的示图。图12的操作可以在图2中的控制逻辑240的控制下执行。
参照图12,存储器装置110可以以高于从存储器控制器120输入的多个读取命令之中的、在第一读取命令RCMD1之后输入的读取命令的优先级,执行针对第一读取命令RCMD1的读取重试操作。
由此,存储器装置110可以防止针对第一读取命令RCMD1的读取重试操作因执行另一读取命令的操作而延迟。存储器装置110可以早于执行另一读取命令的操作而执行针对第一读取命令RCMD1的读取重试操作,使得对第一读取命令RCMD1的响应可以早于对在第一读取命令RCMD1之后输入的读取命令的响应而被输出到存储器控制器120。
在这种情况下,在执行针对第一读取命令RCMD1的读取重试操作时,存储器装置110可以同时执行以下操作:运行在第一读取命令RCMD1之后输入的读取命令(例如,RCMD2、RCMD3或RCMD4)中的一个。
图13是示出基于本公开的实施例的用于操作存储器装置110的方法的示图。
参照图13,用于操作存储器装置110的方法可以包括:监控针对从存储器控制器120输入的多个读取命令RCMD之中的第一读取命令RCMD1是否已经发生读取失败(S1310)。
进一步地,用于操作存储器装置110的方法可以包括:当针对第一读取命令RCMD1已经发生读取失败时,以重叠的方式执行针对第一读取命令RCMD1的读取重试操作以及针对多个读取命令RCMD之中的第二读取命令RCMD2的读取操作(S1320)。
例如,在S1320,可以同时执行将作为针对第一读取命令RCMD1的读取重试操作中读取的数据的第一数据DATA_1存储在高速缓存缓冲器CBUF中的操作以及将作为第二读取命令RCMD2请求读取的数据的第二数据DATA_2输出到存储器控制器120的操作。
当针对第一读取命令RCMD1的读取重试操作开始时,第二数据DATA_2可以处于其被预先存储在高速缓存缓冲器CBUF中的状态。
用于操作存储器装置110的方法可以进一步包括同时执行以下操作:将第一数据DATA_1输出到存储器控制器120;以及将作为多个读取命令RCMD之中的第三读取命令RCMD3请求读取的数据的第三数据DATA_3存储在高速缓存缓冲器CBUF中。
此外,可以重复执行针对第一读取命令RCMD1读取重试操作,直到针对第一读取命令RCMD1的读取重试操作成功。可以以高于多个读取命令RCMD之中的、在第一读取命令RCMD1之后输入的读取命令的优先级,执行针对第一读取命令RCMD1的读取重试操作。
图14是示出基于本公开的实施例的计算系统1400的配置的示图。
参照图14,基于本公开的实施例的计算系统1400可以包括:存储器系统100,电连接到系统总线1460;中央处理单元(CPU)1410,被配置为控制计算系统1400的全部操作;随机存取存储器(RAM)1420,被配置为存储与计算系统1400的操作有关的数据和信息;用户接口/用户体验(UI/UX)模块1430,被配置为向用户提供用户环境;通信模块1440,被配置为作为有线和/或无线类型与外部装置通信;以及电源管理模块1450,被配置为管理计算系统1400使用的电力。
计算系统1400可以是个人计算机(PC),或者可以包括诸如智能电话、平板电脑或各种电子装置的移动终端。
计算系统1400可以进一步包括用于供应操作电压的电池,并且可以进一步包括应用芯片组、图形相关模块、相机图像处理器和动态随机存取存储器(DRAM)。其它附加元件对于本领域技术人员而言将是显而易见的。
存储器系统100不仅可以包括诸如硬盘驱动器(HDD)的、被配置为将数据存储在磁盘中的装置,还可以包括诸如固态驱动器(SSD)、通用闪存装置或嵌入式MMC(eMMC)装置的、被配置为将数据存储在非易失性存储器中的装置。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪速存储器、相变RAM(PRAM)、磁性RAM(MRAM)、电阻式RAM(RRAM)、铁电RAM(FRAM)等。另外,存储器系统100可以被实施为各种类型的存储装置并且被安装在各种电子装置内部。
基于上述本公开的实施例,可以有利地使存储器系统的操作延迟时间减少或最小化。另外,基于本公开的实施例,可以有利地使在调用特定功能的进程中发生的开销减少或最小化。尽管已经出于说明的目的以特定的详情和变化的细节描述了本公开的各个实施例,但是本领域技术人员将理解,可以基于本公开中公开或示出的内容进行各种修改、添加和替换。
此外,已经在附图和说明书中描述了本公开的实施例。虽然此处使用了特定的术语,但它们仅用于描述本公开的实施例。因此,本公开不限于上述实施例,并且在本公开的精神和范围内可以进行许多变型。本领域技术人员应当清楚,除了本文公开的实施例以及所附权利要求书,还可以在本公开的技术范围的基础上进行各种修改。可以对实施例进行组合,以形成另外的实施例。
Claims (13)
1.一种存储器装置,包括:
存储器单元阵列;
读取/写入电路,读取所述存储器单元阵列中存储的数据;以及
控制逻辑,控制所述读取/写入电路运行从存储器控制器输入的多个读取命令,
其中,当针对所述多个读取命令之中的第一读取命令发生读取失败时,所述存储器装置以重叠的方式执行针对所述第一读取命令的读取重试操作以及针对所述多个读取命令之中的第二读取命令的读取操作。
2.根据权利要求1所述的存储器装置,进一步包括:高速缓存缓冲器,能够高速缓存所述多个读取命令请求读取的数据,
其中所述存储器装置同时执行将第一数据高速缓存在所述高速缓存缓冲器中的操作以及将第二数据输出到所述存储器控制器的操作,所述第一数据为针对所述第一读取命令的读取重试操作中读取的数据,所述第二数据为所述第二读取命令请求读取的数据。
3.根据权利要求2所述的存储器装置,其中当针对所述第一读取命令的读取重试操作开始时,所述第二数据被预先存储在所述高速缓存缓冲器中。
4.根据权利要求2所述的存储器装置,其中所述存储器装置同时执行将所述第一数据输出到所述存储器控制器的操作以及将第三数据高速缓存在所述高速缓存缓冲器中的操作,所述第三数据为所述多个读取命令之中的第三读取命令请求读取的数据。
5.根据权利要求1所述的存储器装置,其中所述存储器装置重复执行针对所述第一读取命令的读取重试操作,直到针对所述第一读取命令的读取重试操作成功。
6.根据权利要求5所述的存储器装置,其中所述存储器装置以高于所述多个读取命令之中的、在所述第一读取命令之后输入的读取命令的优先级,执行针对所述第一读取命令的读取重试操作。
7.一种操作存储器装置的方法,所述存储器装置运行从存储器控制器输入的多个读取命令,所述方法包括:
监控针对所述多个读取命令之中的第一读取命令是否已经发生读取失败;以及
当针对所述第一读取命令已经发生读取失败时,以重叠的方式执行针对所述第一读取命令的读取重试操作以及针对所述多个读取命令之中的第二读取命令的读取操作。
8.根据权利要求7所述的方法,其中以重叠的方式执行针对所述第一读取命令的读取重试操作以及针对所述第二读取命令的读取操作包括:
同时执行将第一数据存储在能够高速缓存所述多个读取命令请求读取的数据的高速缓存缓冲器中的操作以及将第二数据输出到所述存储器控制器的操作,所述第一数据为针对所述第一读取命令的读取重试操作中读取的数据,所述第二数据为所述第二读取命令请求读取的数据。
9.根据权利要求8所述的方法,其中当针对所述第一读取命令的读取重试操作开始时,所述第二数据被预先存储在所述高速缓存缓冲器中。
10.根据权利要求8所述的方法,进一步包括:
同时执行将所述第一数据输出到所述存储器控制器的操作以及将第三数据存储在所述高速缓存缓冲器中的操作,所述第三数据为所述多个读取命令之中的第三读取命令请求读取的数据。
11.根据权利要求7所述的方法,其中重复执行针对所述第一读取命令的读取重试操作,直到针对所述第一读取命令的读取重试操作成功。
12.根据权利要求11所述的方法,其中以高于所述多个读取命令之中的、在所述第一读取命令之后输入的读取命令的优先级,执行针对所述第一读取命令的读取重试操作。
13.一种存储器装置,包括:
存储器单元阵列,包括多个页面;
高速缓存缓冲器;以及
控制逻辑:
从存储器控制器接收与所述多个页面相关联的多个读取命令;
顺序地运行所述多个读取命令之中的第一读取命令和第二读取命令,以从所述多个页面之中的第一页面和第二页面读取第一数据和第二数据,并且将第一读取数据和第二读取数据高速缓存在所述高速缓存缓冲器中;
确定针对所述第一读取数据是否已经发生读取失败;以及
当确定针对所述第一读取数据发生读取失败时,针对所述第一页面执行读取重试以读取所述第一读取数据并且将所述第一读取数据高速缓存在所述高速缓存缓冲器中,同时将高速缓存在所述高速缓存缓冲器中的所述第二读取数据传送到所述存储器控制器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2021-0021586 | 2021-02-18 | ||
KR1020210021586A KR20220118011A (ko) | 2021-02-18 | 2021-02-18 | 메모리 장치 및 메모리 장치의 동작 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114968078A true CN114968078A (zh) | 2022-08-30 |
Family
ID=82801213
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110991619.3A Withdrawn CN114968078A (zh) | 2021-02-18 | 2021-08-27 | 存储器装置及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11507323B2 (zh) |
KR (1) | KR20220118011A (zh) |
CN (1) | CN114968078A (zh) |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6385686B1 (en) * | 1999-07-13 | 2002-05-07 | Micron Technology, Inc. | Apparatus for supporting multiple delayed read transactions between computer buses |
US8489783B2 (en) * | 2007-01-03 | 2013-07-16 | Apple Inc. | Multi buffer asynchronous scheme for processing incoming information |
KR20090081716A (ko) | 2008-01-25 | 2009-07-29 | 삼성전자주식회사 | 읽기 동작 리트라이 방법 및 상기 방법을 수행할 수 있는데이터 저장 장치 |
KR20130034522A (ko) * | 2011-09-28 | 2013-04-05 | 삼성전자주식회사 | 비휘발성 메모리 장치의 데이터 리드 방법, 및 이를 수행하는 장치 |
KR101961318B1 (ko) * | 2012-09-07 | 2019-07-17 | 삼성전자주식회사 | 중앙처리장치에서의 점유시간을 최소화하는 방어코드 운영 방법 및 그에 따른 메모리 시스템 |
US20150075325A1 (en) * | 2013-09-17 | 2015-03-19 | Illinois Tool Works Inc. | Synchronized dual drive gear assemblies and methods |
KR102219293B1 (ko) * | 2014-07-28 | 2021-02-23 | 삼성전자 주식회사 | 메모리 장치, 메모리 시스템, 상기 메모리 장치의 동작 방법 및 상기 메모리 시스템의 동작 방법 |
KR20170028160A (ko) * | 2015-09-03 | 2017-03-13 | 에스케이하이닉스 주식회사 | 에러 정정기를 포함하는 메모리 시스템 및 그것의 동작 방법 |
KR102353363B1 (ko) | 2017-08-14 | 2022-01-20 | 에스케이하이닉스 주식회사 | 메모리 시스템의 동작 방법 |
KR20210115751A (ko) * | 2020-03-16 | 2021-09-27 | 에스케이하이닉스 주식회사 | 스토리지 장치 및 그 동작 방법 |
-
2021
- 2021-02-18 KR KR1020210021586A patent/KR20220118011A/ko unknown
- 2021-07-13 US US17/374,372 patent/US11507323B2/en active Active
- 2021-08-27 CN CN202110991619.3A patent/CN114968078A/zh not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
KR20220118011A (ko) | 2022-08-25 |
US11507323B2 (en) | 2022-11-22 |
US20220261186A1 (en) | 2022-08-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230333932A1 (en) | Memory system and operating method thereof | |
CN114067870A (zh) | 存储器系统、存储器装置以及用于操作存储器装置的方法 | |
CN114863962A (zh) | 存储器系统及其操作方法 | |
CN113903384A (zh) | 存储器系统、存储器控制器以及操作存储器系统的方法 | |
CN112860176A (zh) | 存储器系统、存储器控制器及其操作方法 | |
CN113204312A (zh) | 存储器系统、存储器控制器及存储器系统的操作方法 | |
CN116136738A (zh) | 使用外部装置执行后台操作的存储器系统及其操作方法 | |
CN113703662B (zh) | 存储器系统、存储器控制器及其操作方法 | |
US20210382655A1 (en) | Memory device, memory system, and operation method of memory device | |
CN114860153A (zh) | 系统及其操作方法 | |
CN114090473A (zh) | 存储器系统、存储器控制器及操作存储器系统的方法 | |
CN115963981A (zh) | 存储器系统及存储器系统的操作方法 | |
CN115952115A (zh) | 基于融合链表控制同步操作的存储器控制器及其操作方法 | |
CN115206393A (zh) | 存储器装置及存储器装置的操作方法 | |
CN112925476A (zh) | 存储器系统、存储器控制器及其操作方法 | |
US11507323B2 (en) | Memory device and operating method thereof | |
US11669266B2 (en) | Memory system and operating method of memory system | |
US12099751B2 (en) | Memory system, memory controller and operating method of the memory system operating as read boost mode | |
US11704050B2 (en) | Memory system for determining a memory area in which a journal is stored according to a number of free memory blocks | |
US11636007B2 (en) | Memory system and operating method thereof for flushing data in data cache with parity | |
US11404137B1 (en) | Memory system and operating method of memory system | |
US11880599B2 (en) | Memory system and operating method of the memory system inputting an additional read enable toggle signal to output status information of memory device | |
US20230297502A1 (en) | Memory system, memory controller and operating method of the memory system for controlling garbage collection | |
CN115437968A (zh) | 存储器系统及存储器系统的操作方法 | |
CN116303107A (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: 20220830 |