CN114625673A - 存储装置及其操作方法 - Google Patents
存储装置及其操作方法 Download PDFInfo
- Publication number
- CN114625673A CN114625673A CN202110887629.2A CN202110887629A CN114625673A CN 114625673 A CN114625673 A CN 114625673A CN 202110887629 A CN202110887629 A CN 202110887629A CN 114625673 A CN114625673 A CN 114625673A
- Authority
- CN
- China
- Prior art keywords
- data
- buffer
- memory device
- memory
- plane
- 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.)
- Pending
Links
Images
Classifications
-
- 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0811—Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
-
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- 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/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/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
- 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/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
- 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
- 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
-
- 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/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
-
- 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/60—Details of cache memory
- G06F2212/608—Details relating to cache mapping
-
- 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/7205—Cleaning, compaction, garbage collection, erase control
-
- 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)
- Quality & Reliability (AREA)
- Read Only Memory (AREA)
Abstract
本发明提供了一种存储装置及其操作方法,该存储装置包括:存储器装置,包括多个平面以及高速缓存缓冲器和数据缓冲器的多个对;以及存储器控制器,用于控制存储器装置以将第一数据和第二数据从第一平面和第二平面传输到各自的第一高速缓存缓冲器和第二高速缓存缓冲器,并且控制第一高速缓存缓冲器与第二高速缓存缓冲器以将第一数据与第二数据传输到存储器控制器。在第一数据从第一高速缓存缓冲器传输到存储器控制器的同时,响应于来自主机的针对第三数据的读取请求,存储器控制器将高速缓存读取命令传输到存储器装置,使得在第一数据完全传输到存储器控制器之后且在从第二高速缓存缓冲器传输第二数据之前,存储器装置读取第三数据。
Description
相关申请的交叉引用
本申请要求于2020年12月10日提交的申请号为10-2020-0172469的韩国专利申请的优先权,该韩国专利申请通过引用整体并入本文。
技术领域
本公开总体涉及一种电子装置,并且更特别地,涉及一种存储装置及其操作方法。
背景技术
存储装置是在诸如计算机或智能电话的主机装置的控制下存储数据的装置。存储装置可以包括用于存储数据的存储器装置和用于控制存储器装置的存储器控制器。存储器装置被分类为易失性存储器装置和非易失性存储器装置。
易失性存储器装置是仅在供应电力时存储数据而在中断电力的供应时所存储的数据丢失的存储器装置。易失性存储器装置可以包括静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)等。
非易失性存储器装置是即使在中断电力的供应时,数据也不丢失的存储器装置。非易失性存储器装置可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除ROM(EEROM)、闪速存储器等。
发明内容
本公开的各个实施例提供一种用于执行改进的读取操作的存储装置以及该存储装置的操作方法。
根据本公开的一方面,提供了一种存储装置,包括:存储器装置,包括多个平面以及高速缓存缓冲器和数据缓冲器的多个对,多个平面包括存储数据的多个存储块,多个对分别联接到多个平面;以及存储器控制器,被配置成控制存储器装置以将第一数据和第二数据从第一平面和第二平面传输到各自的第一高速缓存缓冲器和第二高速缓存缓冲器,并且被配置成当第一数据和第二数据被存储在第一高速缓存缓冲器和第二高速缓存缓冲器中时,控制第一高速缓存缓冲器和第二高速缓存缓冲器以将第一数据传输到存储器控制器,其中在第一数据从第一高速缓存缓冲器传输到存储器控制器的同时,响应于来自主机的针对第三数据的读取请求,存储器控制器进一步被配置成将高速缓存读取命令传输到存储器装置,使得在第一数据从第一高速缓存缓冲器完全传输到存储器控制器之后且在第二数据从第二高速缓存缓冲器传输到存储器控制器之前,存储器装置读取与读取请求相对应的第三数据。
根据本公开的另一方面,提供了一种存储装置,包括:存储器装置,包括多个平面和分别与多个平面相对应的多个页面缓冲器;以及存储器控制器,被配置成控制存储器装置以执行移动多个平面中的每一个中包括的有效数据的垃圾收集操作和读取与从主机接收的读取请求相对应的主机数据的读取操作,其中当正在对多个平面执行垃圾收集操作的同时,存储器控制器从主机接收到针对至少一个平面的读取请求时,存储器控制器进一步被配置成控制存储器装置以响应于针对至少一个平面的读取请求,对至少一个平面执行高速缓存读取操作。
根据本公开的另一方面,提供了一种存储系统,包括:存储器装置,包括多个平面,多个平面分别与多个电路相对应,每个电路包括第一缓冲器和第二缓冲器;以及控制器,被配置成控制存储器装置以:通过电路中的第二缓冲器,来执行移动在平面中存储的垃圾收集(GC)数据的GC操作;在GC数据缓冲在电路中的第二缓冲器中的情况下,根据高速缓存读取方案,将来自平面中的所选择平面的数据读取到与所选择平面相对应的电路中的第一缓冲器,并且根据高速缓存读取方案,只要GC数据从相应电路中的第二缓冲器中清除,就通过相应电路中的第二缓冲器将来自第一缓冲器的读取数据提供到控制器。
附图说明
现在将在下文中参照附图更充分地描述本公开的实施例;然而,实施例可以以不同的形式实现,并且不应当被解释为受限于本文阐述的实施例。相反,提供这些实施例以使得本公开将是透彻和完整的,并将把实施例的范围充分传达给本领域技术人员。
在附图中,为了清楚地示出,尺寸可能被夸大。将理解的是,当元件被称为在两个元件“之间”时,它可能是这两个元件之间的唯一元件,或者也可能存在一个或多个中间元件。相同的附图标记始终指代相同的元件。
图1是示出根据本公开的实施例的存储装置的框图。
图2是示出根据本公开的实施例的存储器装置的框图。
图3是示出根据本公开的实施例的存储块的示图。
图4是示出根据本公开的实施例的垃圾收集操作的示图。
图5是示出根据本公开的实施例的高速缓存读取操作的示图。
图6是示出根据本公开的实施例的包括多个平面和多个页面缓冲器的存储器装置的示图。
图7是示出根据本公开的实施例的高速缓存缓冲器和数据缓冲器的示图。
图8是示出根据已经提出的一些方法的用于处理在垃圾收集操作期间接收的读取请求的方法的示图。
图9是示出根据本公开的实施例的用于处理在垃圾收集操作期间接收的读取请求的方法的示图。
图10是示出根据本公开的实施例的存储器控制器的示图。
图11是示出根据本公开的另一实施例的存储器控制器的示图。
图12是示出根据本公开的实施例的存储卡系统的示图。
图13是示出根据本公开的实施例的固态驱动器(SSD)的示图。
图14是示出根据本公开的实施例的用户系统的示图。
具体实施方式
出于描述根据本公开的概念的实施例的目的,本文中公开的特定结构或功能描述仅是说明性的。根据本公开的概念的实施例可以以各种形式实施,并且不应当被解释为限于本文中阐述的实施例。
本公开可适用于各种变化和不同形状,因此仅以具体的示例进行详细说明。然而,这些示例不限于特定形式,而是适用于所有改变、等效材料和替代。为了更好地理解,以放大附图的方式来示出所包括的附图。在描述实施例时,省略了对本领域中已知的并且与本公开不直接相关的技术的描述。这是为了进一步在不混乱的情况下,清楚地阐明本公开的要点。
下文中,将参照附图详细描述本公开的各个实施例,以便本领域技术人员能够容易地实施本公开的技术精神。
图1是示出根据本公开的实施例的存储装置的框图。
参照图1,存储装置1000可以包括存储器装置100和存储器控制器200。
存储装置1000可以是用于在诸如以下的主机2000的控制下存储数据的装置:移动电话、智能电话、MP3播放器、膝上型计算机、台式计算机、游戏机、显示装置、平板PC或车载式信息娱乐装置。
根据作为与主机2000之间的通信方案的主机接口,存储装置1000可以被制造为各种类型的存储装置中的任意一种。例如,存储装置1000可以利用诸如以下的各种类型的存储装置中的任意一种来实施:固态驱动器(SSD)、多媒体卡(MMC)、嵌入式MMC(eMMC)、尺寸减小的MMC(RS-MMC)、微型MMC(micro-MMC)、安全数字(SD)卡、迷你SD卡、微型SD卡、通用串行总线(USB)存储装置、通用闪存(UFS)装置、紧凑型闪存(CF)卡、智能媒体卡(SMC)、记忆棒等。
存储装置1000可以被实施为各种封装类型中的任意一种。例如,存储装置1000可以被实施为诸如以下的各种封装类型中的任意一种:堆叠封装(POP)、系统级封装(SIP)、片上系统(SOC)、多芯片封装(MCP)、板上芯片(COB)、晶圆级制造封装(WFP)和晶圆级堆叠封装(WSP)。
存储器装置100可以存储数据或使用所存储的数据。存储器装置100可以在存储器控制器200的控制下操作。而且,存储器装置100可以包括多个存储器管芯,并且多个存储器管芯中的每一个可以包括存储器单元阵列,该存储器单元阵列包括用于存储数据的多个存储器单元。
存储器单元中的每一个可以被配置为存储一个数据位的单层单元(SLC)、存储两个数据位的多层单元(MLC)、存储三个数据位的三层单元(TLC)或存储四个数据位的四层单元(QLC)。
存储器单元阵列可以包括多个存储块。每个存储块可以包括多个存储器单元,并且一个存储块可以包括多个页面。页面可以是用于将数据存储在存储器装置100中或读取存储在存储器装置100中的数据的单位。
存储器装置100可以被实施为双倍数据速率同步动态随机存取存储器(DDRSDRAM)、第四代低功率双倍数据速率(LPDDR4)SDRAM、图形双倍数据速率(GDDR)SDRAM、低功率DDR(LPDDR)、Rambus动态随机存取存储器(RDRAM)、NAND闪速存储器、垂直NAND闪速存储器、NOR闪速存储器、电阻式随机存取存储器(RRAM)、相变随机存取存储器(PRAM)、磁阻随机存取存储器(MRAM)、铁电随机存取存储器(FRAM)、自旋转移力矩随机存取存储器(STT-RAM)等。在本说明书中,为了便于描述,描述了存储器装置100是NAND闪速存储器的情况。
存储器装置100可以从存储器控制器200接收命令和地址。存储器装置100可以访问存储器单元阵列中的由所接收的地址选择的区域。当存储器装置100访问所选择区域时,可以表示存储器装置100对所选择区域执行与接收到的命令相对应的操作。例如,存储器装置100可以执行写入操作(编程操作)、读取操作和擦除操作。编程操作可以是存储器装置100将数据记录在由地址选择的区域中的操作。读取操作可以表示存储器装置100从由地址选择的区域读取数据的操作。擦除操作可以表示存储器装置100擦除存储在由地址选择的区域中的数据的操作。
存储器控制器200可以控制存储装置1000的全部操作。具体地,当向存储装置1000施加电力时,存储器控制器200可以运行指令,例如固件(FW)。FW可以包括主机接口层(HIL)、闪存转换层(FTL)和闪存接口层(FIL),主机接口层(HIL)接收从主机2000输入的请求或向主机2000输出响应,闪存转换层(FTL)管理主机2000的接口与存储器装置100的接口之间的操作,并且闪存接口层(FIL)向存储器装置100提供命令或从存储器装置100接收响应。
存储器控制器200可以从主机2000接收数据和逻辑地址(LA)并将LA转换为物理地址(PA),物理地址(PA)指示存储器装置100中包括的、待存储数据的存储器单元的地址。LA可以是逻辑块地址(LBA),并且PA可以是物理块地址(PBA)。
存储器控制器200可以响应于来自主机2000的请求而控制存储器装置100以执行编程操作、读取操作、擦除操作等。在编程操作中,存储器控制器200可以将编程命令、PBA和数据提供到存储器装置100。在读取操作中,存储器控制器200可以将读取命令和PBA提供到存储器装置100。在擦除操作中,存储器控制器200可以将擦除命令和PBA提供到存储器装置100。
存储器控制器200可以在不管来自主机2000的任何请求的情况下,控制存储器装置100以自主地执行编程操作、读取操作或擦除操作。例如,存储器控制器200可以控制存储器装置100以执行用于执行诸如损耗均衡、垃圾收集或读取回收的后台操作的编程操作、读取操作或擦除操作。
根据本公开的实施例,存储器控制器200可以在不管来自主机2000的任何请求的情况下,控制存储器装置100以执行垃圾收集操作。垃圾收集操作可以是如下的一种操作:仅收集牺牲块中存储的数据之中的有效数据,将所收集的有效数据移动到另一空闲块,并且擦除无效数据以获得空闲块。例如,垃圾收集操作可以配置有以下操作:收集存储器装置100中包括的牺牲块中存储的有效数据的垃圾读取操作,将所收集的有效数据编程在目标块中的垃圾编程操作,以及擦除牺牲块的垃圾擦除操作。
而且,根据本公开的实施例,当在垃圾收集期间,存储器控制器200在不管来自主机2000的任何请求的情况下接收到来自主机2000的读取请求时,存储器控制器200可以控制存储器装置100优先处理与接收到的读取请求相对应的读取操作。而且,存储器控制器200可以响应于在垃圾收集操作期间接收到的读取请求而控制存储器装置100以执行高速缓存读取操作。
主机2000可以使用诸如以下的各种通信标准或接口中的至少一种与存储装置1000通信:通用串行总线(USB)、串行AT附件(SATA)、高速芯片间(HSIC)、小型计算机系统接口(SCSI)、火线、外围组件互连(PCI)、高速PCI(PCIe)、高速非易失性存储器(NVMe)、通用闪存(UFS)、安全数字(SD)、多媒体卡(MMC)、嵌入式MMC(eMMC)、双列直插式存储器模块(DIMM)、寄存式DIMM(RDIMM)和低负载的DIMM(LRDIMM)。
图2是示出根据本公开的实施例的存储器装置的框图。
参照图2,存储器装置100可以包括存储器单元阵列110、外围电路120和控制逻辑130。
存储器单元阵列110包括多个存储块BLK1至BLKz。多个存储块BLK1至BLKz通过行线RL连接到行解码器121。行线RL可以包括至少一个源极选择线、多个字线和至少一个漏极选择线。多个存储块BLK1至BLKz通过位线BL1至BLn连接到页面缓冲器组123。多个存储块BLK1至BLKz中的每个存储块包括多个存储器单元。在实施例中,多个存储器单元可以是非易失性存储器单元。连接到相同字线的存储器单元可以对应于一个页面。因此,一个存储块可以包括多个页面。
存储器单元阵列110中包括的存储器单元中的每一个可以被配置为存储一个数据位的单层单元(SLC)、存储两个数据位的多层单元(MLC)、存储三个数据位的三层单元(TLC)或存储四个数据位的四层单元(QLC)。
外围电路120可以被配置成在控制逻辑130的控制下,对存储器单元阵列110中的所选择区域执行编程操作、读取操作或擦除操作。也就是说,外围电路120在控制逻辑130的控制下驱动存储器单元阵列110。例如,外围电路120可以在控制逻辑130的控制下向行线RL和位线BL1至BLn施加各种操作电压或使所施加的电压放电。
具体地,外围电路120可以包括行解码器121、电压生成器122、页面缓冲器组123、列解码器124、输入/输出电路125和感测电路126。
行解码器121可以通过行线RL连接到存储器单元阵列110。行线RL可以包括至少一个源极选择线、多个字线和至少一个漏极选择线。在实施例中,字线可以包括正常字线和虚设字线。在实施例中,行线RL可以进一步包括管道选择线。
行解码器121可以在控制逻辑130的控制下操作。行解码器121可以从控制逻辑130接收行地址RADD。具体地,行解码器121可以对行地址RADD进行解码。行解码器121可以根据经解码的地址来在存储块BLK1至BLKz之中选择至少一个存储块。而且,行解码器121可以根据经解码的地址来选择所选择存储块的至少一个字线,以将由电压生成器122生成的电压施加到至少一个字线WL。
例如,在编程操作中,行解码器121可以将编程电压施加到所选择字线,并且将电平不同于(例如,低于)编程电压的电平的编程通过电压施加到未选择字线。在编程验证操作中,行解码器121可以将验证电压施加到所选择字线,并且将高于验证电压的验证通过电压施加到未选择字线。在读取操作中,行解码器121可以将读取电压施加到所选择字线,并且将高于读取电压的读取通过电压施加到未选择字线。
在实施例中,可以以存储块为单位来执行存储器装置100的擦除操作。在擦除操作中,行解码器121可以根据经解码的地址而选择一个存储块。在擦除操作中,行解码器121可以将参考(例如,接地)电压施加到连接到所选择存储块的字线。
电压生成器122可以在控制逻辑130的控制下操作。具体地,电压生成器122可以在控制逻辑130的控制下,通过使用供应给存储器装置100的外部电源电压来生成多个电压。例如,电压生成器122可以在控制逻辑130的控制下生成编程电压、验证电压、通过电压、读取电压、擦除电压等。也就是说,电压生成器122可以响应于操作信号OPSIG而生成用于编程操作、读取操作和擦除操作的各种操作电压Vop。
在实施例中,电压生成器122可以通过调节外部电源电压来生成内部电源电压。由电压生成器122生成的内部电源电压可以用作存储器单元阵列110的操作电压。
在实施例中,电压生成器122可以通过使用外部电源电压或内部电源电压来生成多个电压。例如,电压生成器122可以包括用于接收内部电源电压的多个泵浦(pumping)电容器,并且在控制逻辑130的控制下通过选择性地激活多个泵浦电容器来生成多个电压。另外,可以通过行解码器121将所生成的多个电压供应到存储器单元阵列110。
页面缓冲器组123可以包括第一至第n页面缓冲器PB1至PBn。第一至第n页面缓冲器PB1至PBn可以分别通过第一至第n位线BL1至BLn连接到存储器单元阵列110。而且,第一至第n位线BL1至BLn可以在控制逻辑130的控制下操作。具体地,第一至第n位线BL1至BLn可以响应于页面缓冲器控制信号PBSIGNALS而操作。例如,在读取操作或验证操作中,第一至第n页面缓冲器PB1至PBn可以临时存储通过第一至第n位线BL1至BLn接收的数据,或者感测位线BL1至BLn的电压或电流。
具体地,在编程操作中,当将编程电压施加到所选择字线时,第一至第n页面缓冲器PB1至PBn可以通过第一至第n位线BL1至BLn将通过输入/输出电路125接收的数据DATA传送到所选择存储器单元。可以根据所传送的数据DATA来对所选择页面中的存储器单元进行编程。连接到施加有编程允许电压(例如,接地电压)的位线的存储器单元可以具有增加的阈值电压。连接到施加有编程禁止电压(例如,电源电压)的位线的存储器单元的阈值电压可以被保持。
在编程验证操作中,第一至第n页面缓冲器PB1至PBn可以通过第一至第n位线BL1至BLn从所选择存储器单元读取页面数据。
在读取操作中,第一至第n页面缓冲器PB1至PBn可以在列解码器124的控制下,通过第一至第n位线BL1至BLn从所选择页面中的存储器单元读取数据DATA,并且将所读取的数据DATA输出到输入/输出电路125。
在擦除操作中,第一至第n页面缓冲器PB1至PBn可以使第一至第n位线BL1至BLn浮置。
列解码器124可以响应于列地址CADD而在输入/输出电路125和页面缓冲器组123之间通信数据。例如,列解码器124可以通过数据线DL来与第一至第n页面缓冲器PB1至PBn通信数据,或者通过列线CL来与输入/输出电路125通信数据。
输入/输出电路125可以将从存储器控制器200接收的命令CMD和地址ADDR传送到控制逻辑130,或者与列解码器124交换数据DATA。
在读取操作或验证操作中,感测电路126可以响应于允许位VRYBIT信号而生成参考电流,并且通过将从页面缓冲器组123接收到的感测电压VPB与由参考电流生成的参考电压进行比较来输出通过信号PASS或失败信号FAIL。
控制逻辑130可以响应于命令CMD和地址ADDR,通过输出操作信号OPSIG、行地址RADD、页面缓冲器控制信号PBSIGNALS和允许位VRYBIT来控制外围电路120。
而且,控制逻辑130可以响应于通过信号PASS或失败信号FAIL而确定验证操作是已经通过还是已经失败。而且,控制逻辑130可以控制页面缓冲器组123以将包括通过信号PASS或失败信号FAIL的验证信息临时存储在页面缓冲器组123中。具体地,控制逻辑130可以响应于通过信号PASS或失败信号FAIL而确定存储器单元的编程状态。例如,当存储器单元作为三层单元(TLC)操作时,控制逻辑130可以确定存储器单元的编程状态是否为擦除状态E或第一至第七编程状态P1至P7中的一个。
图3是示出根据本公开的实施例的存储块的示图。
参照图3,在存储块BLKi中,彼此平行布置的多个字线可以连接在第一选择线和第二选择线之间。第一选择线可以是源极选择线SSL,并且第二选择线可以是漏极选择线DSL。更具体地,存储块BLKi可以包括连接在位线BL1至BLn与源极线SL之间的多个串ST。位线BL1至BLn可以分别连接到串ST,并且源极线SL可以共同连接到串ST。串ST可以彼此相同地配置,并且因此作为示例将详细描述连接到第一位线BL1的串ST。
串ST可以包括彼此串联连接在源极线SL与第一位线BL1之间的源极选择晶体管SST、多个存储器单元MC1至MC16和漏极选择晶体管DST。至少一个源极选择晶体管SST和至少一个漏极选择晶体管DST可以包括在一个串ST中,并且一个串ST中可以包括比附图中所示的存储器单元MC1至MC16的数量更多数量的存储器单元。
源极选择晶体管SST的源极可以连接到源极线SL,并且漏极选择晶体管DST的漏极可以连接到第一位线BL1。存储器单元MC1至MC16可以串联连接在源极选择晶体管SST与漏极选择晶体管DST之间。不同串ST中包括的源极选择晶体管SST的栅极可以连接到源极选择线SSL,并且不同串ST中包括的漏极选择晶体管DST的栅极可以连接到漏极选择线DSL。存储器单元MC1至MC16的栅极可以连接到多个字线WL1至WL16。不同的串ST中包括的存储器单元之中的、连接到相同字线的一组存储器单元可以被称为物理页面PPG。因此,存储块BLKi中可以包括与字线WL1至WL16的数量相对应的物理页面PPG。
存储器单元中的每一个可以被配置为存储一个数据位的单层单元(SLC)、存储两个数据位的多层单元(MLC)、存储三个数据位的三层单元(TLC)或存储四个数据位的四层单元(QLC)。
SLC可以存储一位数据。SLC的一个物理页面PPG可以存储一个逻辑页面(LPG)数据。一个LPG数据可以包括数量与一个物理页面PPG中包括的单元的数量相对应的数据位。
MLC、TLC和QLC可以存储两位或更多位数据。一个物理页面PPG可以存储两个或更多个LPG数据。
在非易失性存储器装置中,存储在存储器单元中的数据不能被重写和更新。因此,每当存储在存储器装置100中的数据被更新或修改时,先前存在的数据可变成旧数据或无效数据,并且存储在新开放块中的数据可变成新数据或有效数据。可选地,当正在执行诸如编程操作、读取操作或擦除操作的内部操作时,由于未知原因而发生错误时,在相应区域中存储的数据是不可靠的,因此作为管理发生错误的坏块的方法,可执行垃圾收集操作。下文中,将参照图4描述垃圾收集操作。
图4是示出根据本公开的实施例的垃圾收集操作的示图。
参照图4,示出了在存储装置1000中执行垃圾收集操作的示图。垃圾收集操作可以是如下一种操作:仅收集牺牲块中存储的数据之中的有效数据,将所收集的有效数据移动到另一空闲块,并且擦除无效数据以获得空闲块。例如,垃圾收集操作可以配置有以下操作:收集存储器装置100中包括的牺牲块中存储的有效数据的垃圾读取操作,将所收集的有效数据编程在目标块中的垃圾编程操作,以及擦除牺牲块的垃圾擦除操作。无效数据可以指由于数据的更新或移动而无法使用的数据,并且有效数据可以是可以使用的最新数据或正常数据。
存储装置1000可以参照有效页面表VPT来检测存储器装置100中的多个存储块BLK中的每一个中包括的多个页面PG中的每一个的页面状态(例如,有效页面状态、无效页面状态等)。有效页面表VPT可以包括多个页面PG中的每一个的页面状态信息(用于检查页面是否为有效页面的信息),使得存储器控制器200可以检测多个页面PG中的每一个的页面状态(例如,有效页面状态、无效页面状态等)。
而且,存储器控制器200可以将检测到的多个有效页面移动到开放块。例如,第一存储块BLK1和第二存储块BLK2中的每一个可以包括至少一个有效页面。另外,第三存储块BLK3可以是有效页面待移动到的开放块或目标块。具体地,存储器控制器200可以控制存储器装置100将第一存储块BLK1和第二存储块BLK2中存储的有效页面移动到第三存储块BLK3。
而且,存储器控制器200可以擦除第一存储块BLK1和第二存储块BLK2。存储器控制器200可以通过擦除第一存储块BLK1和第二存储块BLK2来获得两个空闲块,并且通过擦除无效数据来获得数据存储空间。而且,存储器控制器200可以通过执行地址重置来组织有效页面和无效页面。
存储器控制器200将在第一存储块BLK1和第二存储块BLK2中分布和存储的有效页面移动到第三存储块BLK3。因此,可以获得空闲块以及与存储无效页面的区域的空间相对应的存储空间。
图5是示出根据本公开的实施例的高速缓存读取操作的示图。
参照图5,存储器单元阵列100中包括的多个页面可以被顺序地读取到页面缓冲器组123。具体地,存储器装置100在存储器控制器200的控制下读取存储器单元阵列110中存储的数据。连接到相同字线的存储器单元可以对应于一个页面,并且存储器装置100可以以一个页面为单位来读取所存储的数据。例如,存储器装置100可以读取第N页面,并且读取第(N+1)页面。
存储器装置100可以通过使用页面缓冲器组123,来执行在输出特定页面数据的同时读取下一页面数据的高速缓存读取操作。具体地,存储器装置100可以在输出页面缓冲器组123中临时存储的第(N-1)页面数据的同时,将第N页面中存储的第N页面数据读取到页面缓冲器组123。然后,当第(N-1)页面数据被全部输出时,存储器装置100可以输出页面缓冲器组123中临时存储的第N页面数据。存储器装置100可以在输出页面缓冲器组123中临时存储的第N页面数据的同时,将第(N+1)页面中存储的第(N+1)页面数据读取到页面缓冲器组123。
也就是说,在输出特定页面数据的同时,将下一页面数据输入(或读取)到页面缓冲器组123,并且因此存储器装置100可以减少读取所有页面中存储的数据的读取时间。
图6是示出根据本公开的实施例的包括多个平面和多个页面缓冲器的存储器装置的示图。
参照图6,示出了存储器装置100,该存储器装置100包括存储器单元阵列110、页面缓冲器组123和控制逻辑130。
存储器单元阵列110和页面缓冲器组123可以被划分为通过位线BL彼此连接的多个平面和多个页面缓冲器电路(也可被称为页面缓冲器)。也就是说,多个平面中的每一个和多个页面缓冲器电路中的每一个可以形成一对,以作为一个平面单元来操作。例如,第一平面110a和第一页面缓冲器电路123a可以形成一对以作为平面单元来操作,第二平面110b和第二页面缓冲器电路123b可以形成一对以作为平面单元来操作,第三平面110c和第三页面缓冲器电路123c可以形成一对以作为平面单元来操作,并且第四平面110d和第四页面缓冲器电路123d可以形成一对以作为平面单元来操作。可以将存储器装置100中包括的多个平面和多个页面缓冲器电路划分成多个相应对,并且每一对可以作为一个平面单元来独立地操作。
控制逻辑130可以控制包括页面缓冲器组123的外围电路来独立地对多个平面中的每一个中包括的存储器单元执行读取操作。例如,控制逻辑130可以控制外围电路对第一至第四平面110a至110d中的每一个执行读取操作。
而且,控制逻辑130可以控制外围电路对每个平面独立地执行读取操作。将从每个平面读取的数据临时存储在与每个平面相对应的页面缓冲器电路中,因此可以对每个平面独立地执行读取操作。
图7是示出根据本公开的实施例的高速缓存缓冲器和数据缓冲器的示图。
参照图7,示出了页面缓冲器组123中包括的多个页面缓冲器电路之中的第一页面缓冲器电路123a。虽然图7中仅示出了第一页面缓冲器电路123a,但是图6中示出的第二至第四页面缓冲器电路123b至123d可以以与图7中所示的第一页面缓冲器电路123a相同的结构形成。第一页面缓冲器电路123a可以包括高速缓存缓冲器1231和数据缓冲器1233。
第一页面缓冲器电路123a可以通过位线BL连接到存储器单元阵列110。在读取操作中,第一页面缓冲器电路123a可以在控制逻辑130的控制下操作。具体地,第一页面缓冲器电路123a可以响应于页面缓冲器控制信号PBSIGNALS而操作。第一页面缓冲器电路123a可以通过数据线DL与列解码器124交换数据。
在本公开的实施例中,第一页面缓冲器电路123a中包括的高速缓存缓冲器1231和数据缓冲器1233可以临时存储连接到位线BL的存储器单元中存储的数据。
高速缓存缓冲器1231可以临时存储有效数据或主机数据,并将临时存储的有效数据或临时存储的主机数据输出到数据线。具体地,高速缓存缓冲器1231可以连接到数据线DL,并且将数据输出到外部。根据本公开的实施例,可以将临时存储在高速缓存缓冲器1231中的有效数据或主机数据输出到数据线DL,并且可以通过输入/输出电路125将输出数据传输到存储器控制器200。
当数据通过高速缓存缓冲器1231输出时,数据缓冲器1233可以临时存储后续数据。具体地,数据缓冲器1233的一端可以连接到位线BL,并且数据缓冲器1233的另一端可以连接到高速缓存缓冲器1231。数据缓冲器1233可以通过位线BL感测存储器单元阵列110中存储的数据,并且临时存储所感测的数据。在输出有效数据或主机数据的同时,数据缓冲器1233可以临时存储后续数据。因为数据缓冲器1233不直接连接到数据线DL,所以可以将数据缓冲器1233中存储的数据移动到高速缓存缓冲器1231,然后输出。
存储器装置100可以通过使用页面缓冲器组123来执行参照图5描述的高速缓存读取操作。具体地,存储器装置100可以通过使用第一页面缓冲器组123a中包括的高速缓存缓冲器1231和数据缓冲器1233来执行高速缓存读取操作。例如,在有效数据从高速缓存缓冲器1231输出到数据线DL的同时,存储器装置100可以执行将后续数据读取到数据缓冲器1233的高速缓存读取操作。
根据本公开的实施例,在通过数据线DL将有效数据传输到存储器控制器200的同时,将与主机请求相对应的主机数据读取到数据缓冲器1233并且优先输出,使得存储器装置100可以减少根据主机2000的读取请求的读取时间。
图8是示出用于处理在垃圾收集操作期间接收的读取请求的传统方法的示图。
参照图8,在已经提出的一些方法中,当存储装置在执行垃圾收集操作时从主机接收到读取请求时,存储装置处理读取请求。
根据图8所示的实施例,存储器控制器200’可以传输命令GC CMD,使得存储器装置100’执行垃圾收集操作,而不管来自主机的任何请求。具体地,存储器控制器200’可以传输命令GC CMD,以收集被划分为多个平面(例如,第一至第四平面P1至P4)的存储器单元阵列110’中的有效数据GC Data。
根据图8所示的实施例,存储器装置100’可以响应于从存储器控制器200’接收的命令GC CMD,从多个平面中的每一个中包括的牺牲块读取有效数据。具体地,存储器装置100’可以响应于从存储器控制器200’接收的命令GC CMD,将有效数据GC Data临时存储在页面缓冲器组123’中的、与多个平面中的每一个相对应的页面缓冲器电路中。
而且,存储器装置100’可以将来自与多个平面相对应的页面缓冲器电路中的每一个的有效数据GC Data传输到存储器控制器200’。具体地,每个页面缓冲器电路可以在存储器控制器200’或控制逻辑的控制下随机地输出有效数据。例如,有效数据可以从与第三平面相对应的页面缓冲器电路输出到通道CH,有效数据可以从与第二平面相对应的页面缓冲器电路输出到通道CH,有效数据可以从与第四平面相对应的页面缓冲器电路输出到通道CH,并且有效数据可以从与第一平面相对应的页面缓冲器电路输出到通道CH。
根据图8所示的实施例,当在有效数据从与第三平面相对应的页面缓冲器电路传输到存储器控制器200’的同时,存储器控制器200’接收到来自主机的第一读取请求(例如,第一时间t1)时,在将多个平面中存储的有效数据输出到通道CH之后,存储器控制器200’可以响应于主机的第一读取请求而将第一读取命令RD CMD1传输到存储器装置100’。具体地,在存储器装置100’的页面缓冲器组123’中内部操作(例如,垃圾收集操作)结束之后,存储器控制器200’可以将第一读取命令RD CMD1传输到存储器装置100’。
另外,在从与第一至第四平面相对应的页面缓冲器电路输出了全部的有效数据之后,存储器装置100’可以响应于第一读取命令RD CMD1而执行第一读取操作。具体地,存储器装置100’可以将与第一读取命令RD CMD1相对应的数据RD1 Data读取到页面缓冲器组123’。另外,当在将与第一读取命令RD CMD1相对应的数据读取到页面缓冲器组123’的同时,存储器装置100’接收到来自主机的第二读取请求(例如,第二时间t2)时,在与第一读取命令RD CMD1相对应的读取操作结束之后,存储器控制器200’可以将第二读取命令RD CMD2传输到存储器装置100’。当与第一读取命令RD CMD1相对应的读取操作结束时,存储器装置100’可以执行与第二读取命令RD CMD2相对应的读取操作。
也就是说,根据图8所示的实施例,在执行不管主机的任何请求而执行的内部操作(例如,垃圾收集操作)之后,才处理从主机接收到的读取请求。因此,从主机接收到的读取请求可能由于内部操作而延迟。
图9是示出根据本公开的实施例的用于处理在垃圾收集操作期间接收的读取请求的方法的示图。
参照图9,示出了当存储装置1000在执行垃圾收集操作的同时从主机2000接收读取请求时,存储装置1000处理读取请求的方法。
根据本公开的实施例,存储器控制器200可以传输命令GC CMD,使得存储器装置100执行垃圾收集操作,而不管来自主机的任何请求。具体地,存储器控制器200可以传输命令GC CMD,以收集被划分为多个平面(例如,第一至第四平面P1至P4)的存储器单元阵列110中的有效数据GC Data。
根据本公开的实施例,存储器装置100可以响应于从存储器控制器200接收的命令GC CMD,从多个平面中的每一个中包括的牺牲块读取有效数据。具体地,存储器装置100可以响应于从存储器控制器200接收的命令GC CMD,将有效数据GC Data临时存储在页面缓冲器组123中的、与多个平面中的每一个相对应的高速缓存缓冲器1231中。
而且,存储器装置100可以将来自与多个平面中的每一个相对应的高速缓存缓冲器1231的有效数据GC Data传输到存储器控制器200。具体地,每个高速缓存缓冲器可以在存储器控制器200或控制逻辑130的控制下随机地输出有效数据。例如,有效数据可以从与第二平面相对应的高速缓存缓冲器1231输出到通道CH,有效数据可以从与第三平面相对应的高速缓存缓冲器1231输出到通道CH,有效数据可以从与第四平面相对应的高速缓存缓冲器1231输出到通道CH,并且有效数据可以从与第一平面相对应的高速缓存缓冲器1231输出到通道CH。
当在将与第二平面或第三平面相对应的高速缓存缓冲器1231中的有效数据传输到存储器控制器200的同时,存储器控制器200从主机200接收到针对第二平面的第一读取请求时,存储器控制器200可以响应于主机2000的第一读取请求而将第一读取命令RD CMD1传输到存储器装置100。存储器控制器200可以控制存储器装置100以响应于第一读取请求来执行高速缓存读取操作。具体地,存储器装置100可以响应于第一读取命令RD CMD1而将第二平面中存储的第一主机数据RD1 Data(P2)读取到数据缓冲器1233。另外,存储器控制器200可以检查是否已经从与第二平面相对应的高速缓存缓冲器1231输出了有效数据GCData(P2)。当从与第二平面P2相对应的高速缓存缓冲器1231输出了有效数据GC Data(P2)时,存储器控制器200可以控制存储器装置100以将临时存储在与第二平面P2相对应的数据缓冲器1233中的第一主机数据RD1 Data(P2)移动到与第二平面P2相对应的高速缓存缓冲器1231。具体地,存储器控制器200可以将命令3Fh传输到存储器装置100,该命令3Fh用于控制存储器装置100以在与第二平面P2相对应的页面缓冲器电路123b内,将数据缓冲器1233中存储的第一主机数据RD1 Data(P2)移动到高速缓存缓冲器1231。存储器装置100可以响应于从存储器控制器200接收的命令3Fh,在与第二平面P2相对应的页面缓冲器电路123b内,将数据缓冲器1233中存储的第一主机数据RD1 Data(P2)移动到高速缓存缓冲器1231。移动到与第二平面P2相对应的高速缓存缓冲器1231的第一主机数据RD1 Data(P2)可以通过通道CH而提供到存储器控制器200。
另外,存储器控制器200可以控制存储器装置100以将有效数据从与其它平面(例如,第一平面和第四平面)相对应的高速缓存缓冲器1231输出到通道CH。
当在将有效数据GC Data(P1)从高速缓存缓冲器1231输出到通道CH之前,从主机2000接收到针对多个平面之中的任意平面的第二读取请求时,存储器控制器200可以控制存储器装置100以执行与第二读取请求相对应的读取操作。具体地,存储器控制器200可以控制存储器装置100以通过将与第二读取请求相对应的第二读取命令RD(Pi)CMD2传输到存储器装置100来执行与第二读取请求相对应的读取操作。
根据本公开的实施例,当有效数据从分别与多个平面相对应的高速缓存缓冲器1231输出的同时,存储器控制器200接收到来自主机2000的读取请求时,存储器控制器200可以控制存储器装置100以优先执行从主机2000接收的读取请求。例如,可以是以下情况:有效数据被临时存储在分别与第一至第四平面相对应的高速缓存缓冲器1231中的每一个中,并且尚未从高速缓存缓冲器1231将所有有效数据传输到存储器控制器200。当存储器控制器200从主机2000接收到针对第三平面的读取请求时,存储器控制器200可以控制存储器装置100以将存储在与第三平面相对应的高速缓存缓冲器1231中的有效数据传输到存储器控制器200。存储器控制器200可以控制存储器装置100以将主机数据从第三平面读取到与第三平面相对应的数据缓冲器1233。而且,当与第三平面相对应的高速缓存缓冲器1231将有效数据输出到存储器控制器200并且因此该高速缓存缓冲器1231为空时,存储器控制器200可以控制存储器装置100以将与第三平面相对应的数据缓冲器1233中临时存储的主机数据移动到与第三平面相对应的高速缓存缓冲器1231。
图10是示出根据本公开的实施例的存储器控制器的示图。
参照图10,存储器控制器200可以包括垃圾收集控制器210、读取操作控制器220和调度器230。
垃圾收集控制器210可以控制存储器装置100以对存储器装置100中包括的多个平面中的每一个执行垃圾收集操作。具体地,垃圾收集控制器210可以控制存储器装置100自主地执行编程操作、读取操作或擦除操作,而不管来自主机2000的任何请求。例如,垃圾收集操作可以配置有以下操作:收集存储器装置100中包括的牺牲块中存储的有效数据的垃圾读取操作、将所收集的有效数据编程在目标块中的垃圾编程操作、以及擦除牺牲块的垃圾擦除操作。在一些实施例中,垃圾收集控制器210可以控制存储器装置100以参照有效页面表VPT来收集存储器装置100中的平面的每一个中包括的有效数据。
具体地,垃圾收集控制器210可以控制存储器装置100以将多个平面中的每一个中包括的有效数据顺序地临时存储在页面缓冲器中,并且将临时存储的有效数据随机地输出到数据线。例如,垃圾收集控制器210可以将垃圾读取操作命令传输到第一至第四平面,以执行收集第一至第四平面中分别包括的有效数据的垃圾读取操作。此外,存储器装置100可以在垃圾收集控制器210的控制下,将每个平面中包括的有效数据顺序地临时存储在与每个平面相对应的页面缓冲器中。在存储器装置100将与每个平面相对应的有效数据临时存储在与每个平面相对应的页面缓冲器中之后,存储器装置100可以通过使用与每个平面相对应的高速缓存缓冲器1231来将有效数据传输到存储器控制器200。
读取操作控制器220可以控制存储器装置100以执行高速缓存读取操作。高速缓存读取操作可以是将数据临时存储在至少两个缓冲器中的操作。具体地,在数据临时存储在高速缓存缓冲器1231中的状态下,读取操作控制器220可以控制存储器装置100以感测后续数据并将后续数据加载到数据缓冲器1233。而且,读取操作控制器220可以控制存储器装置100,以首先输出临时存储在高速缓存缓冲器1231中的数据,并且将临时存储在数据缓冲器1233中的后续数据移动到高速缓存缓冲器1231。
例如,当在有效数据临时存储在分别与多个平面相对应的高速缓存缓冲器1231中的状态下,读取操作控制器220接收到来自主机2000的读取请求时,读取操作控制器220可以控制存储器装置100以响应于读取请求而从所选择平面感测主机数据,并且将所感测的主机数据加载到与所选择平面相对应的数据缓冲器1233。而且,读取操作控制器220可以控制存储器装置100以输出临时存储在与所选择平面相对应的高速缓存缓冲器1231中的有效数据,然后将临时存储在数据缓冲器1233中的主机数据移动到与所选择平面相对应的高速缓存缓冲器1231。
调度器230可以确定从页面缓冲器输出的数据的输出顺序。具体地,调度器230可以确定从分别与第一至第四平面相对应的页面缓冲器输出的有效数据和主机数据的输出顺序。例如,当在第一至第四平面中的每一个中包括的有效数据被临时存储在分别与第一至第四平面相对应的高速缓存缓冲器1231中的状态下,调度器230从主机2000接收到针对第一平面的读取请求时,调度器230可以确定输出顺序,使得与第一平面相对应的主机数据比与第二至第四平面相对应的有效数据更早地输出。
而且,为了优先处理从主机2000接收到的读取请求,调度器230可以确定输出顺序,使得与读取请求相对应的平面中的有效数据比与其它平面相对应的有效数据更早地输出。例如,当在第一至第四平面中的每一个中包括的有效数据被临时存储在分别与第一至第四平面相对应的高速缓存缓冲器1231中的状态下,调度器230从主机2000接收到针对第一平面的读取请求时,调度器230可以确定输出顺序,使得与第一平面相对应的有效数据比与第二至第四平面相对应的有效数据更早地输出。
图11是示出根据本公开的另一实施例的存储器控制器的示图。
参照图11,存储器控制器1300可以包括处理器1310、RAM 1320、ECC电路1330、ROM1360、主机接口1370和闪存接口1380。图11所示的存储器控制器1300可以是图1或图10所示的存储器控制器200的实施例。
处理器1310可以通过使用主机接口1370与主机2000通信,并且执行逻辑运算以控制存储器控制器1300的操作。例如,处理器1310可以基于从主机2000或外部装置接收的请求来加载程序命令、数据文件、数据结构等,并且执行各种操作或者生成命令和地址。例如,处理器1310可以生成用于编程操作、读取操作、擦除操作、挂起操作和参数设置操作的各种命令。
而且,处理器1310可以执行闪存转换层(FTL)的功能。处理器1310可以通过FTL将由主机2000提供的逻辑块地址(LBA)转换为物理块地址(PBA)。FTL可以接收所输入的LBA,并且通过使用映射表将LBA转换为PBA。根据映射单位,存在FTL的几种地址映射方法。代表性的地址映射方法包括页面映射方法、块映射方法和混合映射方法。
而且,处理器1310可以在没有来自主机2000的任何请求的情况下生成命令。例如,处理器1310可以生成用于后台操作的命令,后台操作诸如用于存储器装置100的损耗均衡的操作和用于存储器装置100的垃圾收集的操作。
RAM 1320可以用作处理器1310的缓冲存储器、工作存储器或高速缓存存储器。而且,RAM 1320可以存储处理器1310运行的代码和命令。RAM 1320可以存储由处理器1310处理的数据。而且,RAM 1320可以被实施为静态RAM(SRAM)或动态RAM(DRAM)。
ECC电路1330可以检测编程操作或读取操作中的错误,并且校正检测到的错误。具体地,ECC电路1330可以根据错误校正码(ECC)来执行错误校正操作。而且,ECC电路1330可以基于待写入存储器装置100的数据来执行ECC编码。可以通过闪存接口1380将被执行ECC编码的数据传送到存储器装置100。而且,ECC电路1330可以对通过闪存接口1380从存储器装置100接收的数据执行ECC解码。
ROM 1360可以用作存储存储器控制器1300的操作所需的各种信息的存储单元。具体地,ROM 1360可以包括映射表,并且物理到逻辑地址信息和逻辑到物理地址信息可以存储在该映射表中。而且,ROM 1360可以由处理器1310控制。
主机接口1370可以包括用于在主机2000与存储器控制器1300之间交换数据的协议。具体地,主机接口1370可以通过诸如以下的各种接口协议中的至少一种与主机2000通信:通用串行总线(USB)协议、多媒体卡(MMC)协议、外围组件互连(PCI)协议、高速PCI(PCI-E)协议、高级技术附件(ATA)协议、串行ATA协议、并行ATA协议、小型计算机系统接口(SCSI)协议、增强型小型磁盘接口(ESDI)协议、电子集成驱动器(IDE)协议和私有协议。
闪存接口1380可以在处理器1310的控制下通过使用通信协议与存储器装置100通信。具体地,闪存接口1380可以通过通道与存储器装置100通信命令、地址和数据。例如,闪存接口1380可以包括NAND接口。
图12是示出根据本公开的实施例的存储卡系统的示图。
参照图12,存储卡系统3000包括存储器控制器3100、存储器装置3200和连接器3300。
存储器控制器3100可以连接到存储器装置3200。存储器控制器3100可以访问存储器装置3200。例如,存储器控制器3100可以控制对存储器装置3200的读取操作、写入操作、擦除操作和后台操作。存储器控制器3100可以提供存储器装置3200与主机之间的接口。而且,存储器控制器3100可以驱动用于控制存储器装置3200的固件。
例如,存储器控制器3100可以包括诸如随机存取存储器(RAM)、处理单元、主机接口、存储器接口和错误校正器的组件。
存储器控制器3100可以通过连接器3300与外部装置通信。存储器控制器3100可以根据特定的通信协议与外部装置(例如,主机)通信。存储器控制器3100可以通过诸如以下的各种通信协议中的至少一种与外部装置通信:通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、外围组件互连(PCI)、高速PCI(PCIe)、高级技术附件(ATA)、串行ATA(SATA)、并行ATA(PATA)、小型计算机系统接口(SCSI)、增强型小型磁盘接口(ESDI)、电子集成驱动器(IDE)、火线、通用闪存(UFS)、WiFi、蓝牙和NVMe。
存储器装置3200可以利用诸如以下的各种非易失性存储器装置来实施:电可擦除可编程ROM(EEPROM)、NAND闪速存储器、NOR闪速存储器、相变RAM(PRAM)、电阻式RAM(ReRAM)、铁电RAM(FRAM)和自旋转移力矩磁性RAM(STT-MRAM)。
存储器控制器3100和存储器装置3200可以被集成到单个半导体装置中以构成存储卡。例如,存储器控制器3100和存储器装置3200可以构成诸如以下的存储卡:PC卡(个人计算机存储卡国际协会(PCMCIA))、紧凑型闪存(CF)卡、智能媒体卡(SM和SMC)、记忆棒、多媒体卡(MMC、RS-MMC、微型MMC和eMMC)、SD卡(SD、迷你SD、微型SD和SDHC)和通用闪存(UFS)。
图13是示出根据本公开的实施例的固态驱动器(SSD)的示图。
参照图13,SSD系统4000包括主机4100和SSD 4200。SSD 4200通过信号连接器4001与主机4100交换信号SIG,并且通过电源连接器4002接收电力PWR。SSD 4200包括SSD控制器4210、多个闪速存储器4221至422n、辅助电源4230和缓冲存储器4240。
在实施例中,SSD控制器4210可以用作参照图1描述的存储器控制器200。SSD控制器4210可以响应于从主机4100接收的信号SIG而控制多个闪速存储器4221至422n。信号SIG可以是基于主机4100与SSD 4200之间的接口的信号。例如,信号SIG可以是由诸如以下的接口中的至少一种来定义的信号:通用串行总线(USB)、多媒体卡(MMC)、嵌入式MMC(eMMC)、外围组件互连(PCI)、高速PCI(PCIe)、高级技术附件(ATA)、串行ATA(SATA)、并行ATA(PATA)、小型计算机系统接口(SCSI)、增强型小型磁盘接口(ESDI)、电子集成驱动器(IDE)、火线、通用闪存(UFS)、WI-FI、蓝牙和NVMe。
辅助电源4230可以通过电源连接器4002连接到主机4100。辅助电源4230可以接收从主机4100输入的电力PWR并且可以利用电力PWR进行充电。当来自主机4100的电力供应不平稳时,辅助电源4230可以提供SSD 4200的电力。辅助电源4230可以位于SSD 4200内部或者位于SSD 4200外部。例如,辅助电源4230可以位于主板上,并且将辅助电力提供到SSD4200。
缓冲存储器4240可以作为SSD 4200的缓冲存储器来操作。例如,缓冲存储器4240可以临时存储从主机4100接收的数据或从多个闪速存储器4221至422n接收的数据,或者临时存储闪速存储器4221至422n的元数据(例如,映射表)。缓冲存储器4240可以包括诸如DRAM、SDRAM、DDR SDRAM、LPDDR SDRAM和GRAM的易失性存储器,或者诸如FRAM、ReRAM、STT-MRAM和PRAM的非易失性存储器。
图14是示出根据本公开的实施例的用户系统的示图。
参照图14,用户系统5000包括应用处理器5100、存储器模块5200、网络模块5300、存储模块5400和用户接口5500。
应用处理器5100可以驱动用户系统5000中包括的组件、操作系统(OS)、用户程序等。应用处理器5100可以包括用于控制用户系统5000中包括的组件的控制器、接口、图形引擎等。应用处理器5100可以被设置为片上系统(SoC)。
存储器模块5200可以作为用户系统5000的主存储器、工作存储器、缓冲存储器或高速缓存存储器来操作。存储器模块5200可以包括诸如DRAM、SDRAM、DDR SDRAM、DDR2SDRAM、DDR3 SDRAM、LPDDR SDRAM、LPDDR2 SDRAM和LPDDR3 SDRAM的易失性随机存取存储器或诸如PRAM、ReRAM、MRAM和FRAM的非易失性随机存取存储器。应用处理器5100和存储器模块5200可以通过基于堆叠封装(PoP)来进行封装而作为一个半导体封装来提供。
网络模块5300可以与外部装置通信。网络模块5300可以支持诸如以下的无线通信:码分多址(CDMA)、全球移动通信系统(GSM)、宽带CDMA(WCDMA)、CDMA-2000、时分多址(TDMA)、长期演进(LTE)、Wimax、WLAN、UWB、蓝牙和Wi-Fi。网络模块5300可以包括在应用处理器5100中。
存储模块5400可以存储数据。例如,存储模块5400可以存储从应用处理器5100接收的数据。可选地,存储模块5400可以将其中存储的数据传输到应用处理器5100。存储模块5400可以利用诸如以下的非易失性半导体存储器装置来实施:相变RAM(PRAM)、磁性RAM(MRAM)、电阻式RAM(RRAM)、NAND闪存、NOR闪存或具有三维结构的NAND闪存。存储模块5400可以被设置为可移除驱动器,诸如用户系统5000的存储卡或外部驱动器。
存储模块5400可以包括多个非易失性存储器装置,并且多个非易失性存储器装置可以与参照图1描述的存储器装置100相同地操作。存储模块5400可以与参照图1描述的存储装置1000相同地操作。
用户接口5500可以包括用于向应用处理器5100输入数据或命令或者向外部装置输出数据的接口。用户接口5500可以包括诸如以下的用户输入接口:键盘、小键盘、按钮、触摸面板、触摸屏、触摸板、触摸球、摄像机、麦克风、陀螺仪传感器、振动传感器和压电元件。用户接口5500可以包括诸如以下的用户输出接口:液晶显示器(LCD)、有机发光二极管(OLED)显示装置、有源矩阵OLED(AMOLED)显示装置、LED、扬声器和监视器。
根据本公开,提供了一种用于执行改进的读取操作的存储装置和该存储装置的操作方法。
虽然已经参照本公开的特定实施例示出和描述了本公开,但是本领域技术人员将理解的是,在不脱离由所附权利要求及其等同方案所限定的本公开的精神和范围的情况下,可以在其中进行形式和细节上的各种改变。因此,本公开的范围不应限于上述实施例,而是应当不仅由所附权利要求书确定,而且还应由其等同方案确定。
在上述实施例中,可以选择性地执行所有步骤或者可以省略一些或部分步骤。在每个实施例中,这些步骤不一定按照所描述的顺序执行,并且可以重新排列。在本说明书和附图中公开的实施例仅是便于对本公开的理解的示例,并且本公开不限于此。也就是说,对于本领域技术人员应当显而易见的是,可以基于本公开的技术范围进行各种修改。
已经在附图和说明书中描述了本公开的实施例。虽然本文使用了特定术语,但是这些仅是为了描述本公开的实施例。因此,本公开不限于上述实施例,并且在本公开的精神和范围内可以存在许多变型。对于本领域技术人员应当显而易见的是,除了本文公开的实施例之外,还可以基于本公开的技术范围进行各种修改。进一步地,应当注意的是,如本领域技术人员根据本公开将认识到的,本公开可以通过替换、改变和修改而以各种方式来实现,只要它们落入所附权利要求书的范围内。
Claims (20)
1.一种存储装置,包括:
存储器装置,包括多个平面以及高速缓存缓冲器和数据缓冲器的多个对,所述多个平面包括存储数据的多个存储块,所述多个对分别联接到所述多个平面;以及
存储器控制器,控制所述存储器装置以将第一数据和第二数据从第一平面和第二平面传输到各自的第一高速缓存缓冲器和第二高速缓存缓冲器,并且当所述第一数据和所述第二数据被存储在所述第一高速缓存缓冲器和所述第二高速缓存缓冲器中时,控制所述第一高速缓存缓冲器和所述第二高速缓存缓冲器以将所述第一数据传输到所述存储器控制器,
其中在所述第一数据从所述第一高速缓存缓冲器传输到所述存储器控制器的同时,响应于来自主机的针对第三数据的读取请求,所述存储器控制器进一步将高速缓存读取命令传输到所述存储器装置,使得在所述第一数据从所述第一高速缓存缓冲器完全传输到所述存储器控制器之后且在所述第二数据从所述第二高速缓存缓冲器传输到所述存储器控制器之前,所述存储器装置读取与所述读取请求相对应的所述第三数据。
2.根据权利要求1所述的存储装置,
其中在将存储在所述存储器装置中的数据传输到所述存储器控制器之前,所述高速缓存缓冲器存储所述数据,并且
其中所述数据缓冲器连接到所述高速缓存缓冲器,并且在将存储在所述存储器装置中的数据传输到所述高速缓存缓冲器之前,所述数据缓冲器存储所存储的数据。
3.根据权利要求1所述的存储装置,其中响应于所述高速缓存读取命令,所述存储器装置将所述第三数据从第三平面读取到与所述第三平面联接的第三数据缓冲器,并且同时将第三高速缓存缓冲器中存储的数据传输到所述存储器控制器。
4.根据权利要求3所述的存储装置,其中当将所述第三高速缓存缓冲器中存储的数据从所述第三高速缓存缓冲器传输到所述存储器控制器时,所述存储器控制器控制所述存储器装置以将所述第三数据从所述第三数据缓冲器传输到所述第三高速缓存缓冲器。
5.根据权利要求1所述的存储装置,其中所述第一数据和所述第二数据是用于垃圾收集操作的有效数据。
6.根据权利要求1所述的存储装置,其中所述存储器控制器包括:
垃圾收集控制器,控制所述存储器装置以执行在所述多个平面中的每一个中获得空闲块的垃圾收集操作;
读取操作控制器,控制所述存储器装置以通过使用所述高速缓存缓冲器和所述数据缓冲器来执行高速缓存读取操作;以及
调度器,确定从分别包括所述高速缓存缓冲器和所述数据缓冲器的多个对的页面缓冲器中输出的有效数据和主机数据的输出顺序。
7.根据权利要求6所述的存储装置,其中所述垃圾收集控制器控制所述存储器装置,以将所述多个平面中的每一个中包括的有效数据顺序地临时存储在所述页面缓冲器中,并且将所述有效数据随机地从所述页面缓冲器输出到数据线。
8.根据权利要求6所述的存储装置,其中当所述调度器在将所述第一数据传输到所述存储器控制器的同时接收到来自所述主机的针对所述第三数据的读取请求时,所述调度器确定所述输出顺序,使得所述第三数据比所述第二数据更早地传输。
9.根据权利要求6所述的存储装置,其中所述调度器确定所述输出顺序,使得在所述第三高速缓存缓冲器中存储的数据比所述第三数据更早地输出。
10.一种存储装置,包括:
存储器装置,包括多个平面和分别与所述多个平面相对应的多个页面缓冲器;以及
存储器控制器,控制所述存储器装置以执行移动所述多个平面中的每一个中包括的有效数据的垃圾收集操作和读取与从主机接收的读取请求相对应的主机数据的读取操作,
其中当正在对所述多个平面执行所述垃圾收集操作的同时,所述存储器控制器从所述主机接收到针对至少一个平面的读取请求时,所述存储器控制器进一步控制所述存储器装置以响应于针对所述至少一个平面的读取请求,对所述至少一个平面执行高速缓存读取操作。
11.根据权利要求10所述的存储装置,其中所述页面缓冲器中的每一个包括:
高速缓存缓冲器,临时存储所述有效数据或所述主机数据,并且将临时存储的所述有效数据或临时存储的所述主机数据输出到数据线;以及
数据缓冲器,在所述高速缓存缓冲器输出所述有效数据的同时,临时存储所述主机数据以将所述主机数据输出到所述高速缓存缓冲器。
12.根据权利要求11所述的存储装置,其中当在所述有效数据从与所述至少一个平面相对应的高速缓存缓冲器输出到所述数据线之前,所述存储器控制器接收到针对所述至少一个平面的读取请求时,所述存储器控制器控制所述存储器装置,以将所述有效数据从与所述至少一个平面相对应的高速缓存缓冲器输出到所述数据线,然后通过所述数据缓冲器和所述高速缓存缓冲器将与针对所述至少一个平面的读取请求相对应的主机数据输出到所述数据线。
13.根据权利要求12所述的存储装置,其中所述存储器控制器控制所述存储器装置,以将所述有效数据从与所述至少一个平面相对应的高速缓存缓冲器输出到所述数据线,然后将与针对所述至少一个平面的读取请求相对应的主机数据从所述数据缓冲器移动到所述高速缓存缓冲器。
14.根据权利要求11所述的存储装置,其中当在将所述有效数据读取到分别与所述多个平面相对应的高速缓存缓冲器的同时,所述存储器控制器接收到针对所述至少一个平面的读取请求时,所述存储器控制器控制所述存储器装置,以将与所述至少一个平面相对应的有效数据从与所述至少一个平面相对应的高速缓存缓冲器输出到所述数据线,然后通过与所述至少一个平面相对应的数据缓冲器和高速缓存缓冲器,将与针对所述至少一个平面的读取请求相对应的主机数据输出到所述数据线。
15.根据权利要求14所述的存储装置,其中所述存储器控制器控制所述存储器装置,以在将与所述多个平面之中的、除了所述至少一个平面以外的其它平面相对应的有效数据输出到所述数据线之前,将与针对所述至少一个平面的读取请求相对应的主机数据输出到所述数据线。
16.根据权利要求10所述的存储装置,其中所述存储器控制器包括:
垃圾收集控制器,控制所述存储器装置以对所述多个平面中的每一个执行所述垃圾收集操作;
读取操作控制器,控制所述存储器装置,以通过使用与所述至少一个平面相对应的页面缓冲器中包括的至少两个缓冲器,来执行从所述至少一个平面读取所述主机数据的所述高速缓存读取操作;以及
调度器,确定从分别与所述多个平面相对应的页面缓冲器输出的所述有效数据和所述主机数据的输出顺序。
17.根据权利要求16所述的存储装置,其中所述垃圾收集控制器控制所述存储器装置,以在所述垃圾收集操作期间将来自所述多个平面的有效数据临时存储到各自的页面缓冲器中,并且将临时存储的有效数据随机地输出到所述数据线。
18.根据权利要求16所述的存储装置,其中所述调度器确定所述输出顺序,使得与所述至少一个平面相对应的有效数据比与所述多个平面之中的、除了所述至少一个平面以外的其它平面相对应的有效数据更早地输出。
19.根据权利要求16所述的存储装置,其中所述调度器确定所述输出顺序,使得来自所述至少一个平面的主机数据比与所述多个平面之中的、除了所述至少一个平面以外的其它平面相对应的有效数据更早地输出。
20.一种存储系统,包括:
存储器装置,包括多个平面,所述多个平面分别与多个电路相对应,每个电路包括第一缓冲器和第二缓冲器;以及
控制器,控制所述存储器装置以:
通过所述电路中的所述第二缓冲器,来执行移动在所述平面中存储的垃圾收集数据即GC数据的GC操作,
在所述GC数据缓冲在所述电路中的所述第二缓冲器中的情况下,根据高速缓存读取方案,将来自所述平面中的所选择平面的数据读取到与所述所选择平面相对应的电路中的第一缓冲器,并且
根据所述高速缓存读取方案,只要所述GC数据从相应电路中的所述第二缓冲器中清除,就通过所述相应电路中的所述第二缓冲器将来自所述第一缓冲器的读取数据提供到所述控制器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200172469A KR20220082509A (ko) | 2020-12-10 | 2020-12-10 | 저장 장치 및 그 동작 방법 |
KR10-2020-0172469 | 2020-12-10 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114625673A true CN114625673A (zh) | 2022-06-14 |
Family
ID=81897305
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110887629.2A Pending CN114625673A (zh) | 2020-12-10 | 2021-08-03 | 存储装置及其操作方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11734178B2 (zh) |
KR (1) | KR20220082509A (zh) |
CN (1) | CN114625673A (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11282567B2 (en) | 2019-08-20 | 2022-03-22 | Micron Technology, Inc. | Sequential SLC read optimization |
US20210055878A1 (en) * | 2019-08-20 | 2021-02-25 | Micron Technology, Inc. | Data compaction within the same plane of a memory component |
US11726869B2 (en) | 2019-08-20 | 2023-08-15 | Micron Technology, Inc. | Performing error control operation on memory component for garbage collection |
US11281578B2 (en) | 2019-08-20 | 2022-03-22 | Micron Technology, Inc. | Garbage collection in a memory sub-system during a low battery state |
US11281392B2 (en) | 2019-08-28 | 2022-03-22 | Micron Technology, Inc. | Garbage collection in a memory component using an adjusted parameter |
KR20230018831A (ko) * | 2021-07-30 | 2023-02-07 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그 동작 방법 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7562180B2 (en) * | 2006-03-28 | 2009-07-14 | Nokia Corporation | Method and device for reduced read latency of non-volatile memory |
US8495332B2 (en) * | 2009-07-24 | 2013-07-23 | Apple Inc. | Controller for optimizing throughput of read operations |
US9891837B2 (en) * | 2014-09-08 | 2018-02-13 | Toshiba Memory Corporation | Memory system |
KR20160078611A (ko) | 2014-12-24 | 2016-07-05 | 삼성전자주식회사 | 불휘발성 메모리 시스템 및 그것의 동작 방법 |
US10025536B2 (en) * | 2016-02-10 | 2018-07-17 | Sandisk Technologies Llc | Memory system and method for simplifying scheduling on a flash interface module and reducing latencies in a multi-die environment |
US10534716B2 (en) * | 2016-07-13 | 2020-01-14 | Seagate Technology Llc | Limiting access operations in a data storage device |
JP2019057147A (ja) * | 2017-09-21 | 2019-04-11 | 東芝メモリ株式会社 | メモリシステム |
KR102516539B1 (ko) * | 2018-01-24 | 2023-04-03 | 에스케이하이닉스 주식회사 | 메모리 컨트롤러 및 그 동작 방법 |
KR20200055349A (ko) | 2018-11-13 | 2020-05-21 | 에스케이하이닉스 주식회사 | 저장 장치 및 그 동작 방법 |
-
2020
- 2020-12-10 KR KR1020200172469A patent/KR20220082509A/ko unknown
-
2021
- 2021-06-25 US US17/358,922 patent/US11734178B2/en active Active
- 2021-08-03 CN CN202110887629.2A patent/CN114625673A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
KR20220082509A (ko) | 2022-06-17 |
US11734178B2 (en) | 2023-08-22 |
US20220188234A1 (en) | 2022-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11734178B2 (en) | Storage device performing cache read operation using page buffer and operating method thereof | |
US11543984B2 (en) | Memory controller, storage device and operating method thereof | |
US10846002B2 (en) | Memory controller to adjust the size of write data, operating method therof and storage device including the same | |
US11543986B2 (en) | Electronic system including host, memory controller and memory device and method of operating the same | |
US11119950B2 (en) | Storage device and method of operating the same | |
CN110175133B (zh) | 存储装置及其操作方法 | |
CN114443507A (zh) | 存储器系统及其操作方法 | |
CN111445939B (zh) | 存储装置及其操作方法 | |
CN114356209A (zh) | 存储装置及其操作方法 | |
CN111506515B (zh) | 存储器控制器及其操作方法 | |
US11836370B2 (en) | Storage device and operating method thereof | |
US11625324B2 (en) | Storage device for moving valid data to an open memory block based on a valid page list and operating method thereof | |
US11687270B2 (en) | Storage device and operating method performing garbage collection of cyclical data | |
US20220180953A1 (en) | Storage device and operating method thereof | |
US11474723B2 (en) | Storage device and operating method thereof | |
CN114496040A (zh) | 存储器装置 | |
CN112783431A (zh) | 存储装置及其操作方法 | |
CN112199037A (zh) | 存储器控制器及其操作方法 | |
CN113568565B (zh) | 存储器控制器及其操作方法 | |
US11841795B2 (en) | Storage device for setting a flag in a mapping table according to a sequence number and operating method thereof | |
US11500768B2 (en) | Storage device performing garbage collection and method of operating the same | |
US20220328101A1 (en) | Memory device and operating method thereof | |
US20230238040A1 (en) | Storage device and operating method thereof | |
US20220147261A1 (en) | Storage device and operating method thereof | |
CN116804909A (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 |