CN111179994A - 存储设备和操作该存储设备的方法 - Google Patents
存储设备和操作该存储设备的方法 Download PDFInfo
- Publication number
- CN111179994A CN111179994A CN201911035318.2A CN201911035318A CN111179994A CN 111179994 A CN111179994 A CN 111179994A CN 201911035318 A CN201911035318 A CN 201911035318A CN 111179994 A CN111179994 A CN 111179994A
- Authority
- CN
- China
- Prior art keywords
- plane
- data
- page
- read
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 239000000872 buffer Substances 0.000 claims abstract description 105
- 230000005540 biological transmission Effects 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 26
- 101100481702 Arabidopsis thaliana TMK1 gene Proteins 0.000 description 13
- 238000012545 processing Methods 0.000 description 8
- 101800000535 3C-like proteinase Proteins 0.000 description 7
- 101800002396 3C-like proteinase nsp5 Proteins 0.000 description 7
- 101100481703 Arabidopsis thaliana TMK2 gene Proteins 0.000 description 6
- 101100481704 Arabidopsis thaliana TMK3 gene Proteins 0.000 description 6
- 230000000052 comparative effect Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000009977 dual effect Effects 0.000 description 4
- 101100058970 Arabidopsis thaliana CALS11 gene Proteins 0.000 description 3
- 101100049574 Human herpesvirus 6A (strain Uganda-1102) U5 gene Proteins 0.000 description 3
- 101100341076 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) IPK1 gene Proteins 0.000 description 3
- 238000012790 confirmation Methods 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 101150064834 ssl1 gene Proteins 0.000 description 3
- 101100058961 Arabidopsis thaliana CALS2 gene Proteins 0.000 description 2
- 101100287040 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) ARG82 gene Proteins 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 101150062870 ssl3 gene Proteins 0.000 description 2
- 101000641216 Aquareovirus G (isolate American grass carp/USA/PB01-155/-) Non-structural protein 4 Proteins 0.000 description 1
- 101000927946 Homo sapiens LisH domain-containing protein ARMC9 Proteins 0.000 description 1
- 102100036882 LisH domain-containing protein ARMC9 Human genes 0.000 description 1
- 101100482995 Neurospora crassa (strain ATCC 24698 / 74-OR23-1A / CBS 708.71 / DSM 1257 / FGSC 987) gsl-3 gene Proteins 0.000 description 1
- 239000000919 ceramic Substances 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 229920000642 polymer Polymers 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
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/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/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/0877—Cache access modes
- G06F12/0882—Page mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
- G06F3/0611—Improving I/O performance in relation to response time
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/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
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5642—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
- G06F2212/1024—Latency reduction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7203—Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- 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)
- Computer Hardware Design (AREA)
- Read Only Memory (AREA)
Abstract
公开了存储设备和操作该存储设备的方法。在一种操作包括非易失性存储器(NVM)的存储设备的方法中,所述非易失性存储器包括存储器单元阵列,所述存储器单元阵列包括第一平面和第二平面,所述方法包括接收用于所述第一平面和所述第二平面的数据感测的读取命令集;基于所述读取命令集同时将存储在所述第一平面中的第一页面数据加载到第一平面的第一页面缓冲区中、并将存储在所述第二平面中的第二页面数据加载到第二平面的第二页面缓冲区中;接收包括所述第一平面的数据输出命令集;并基于所述数据输出命令集连续地发送第一页面数据和第二页面数据。
Description
相关专利申请的交叉引用
本申请要求于2018年11月9日在韩国知识产权局提交的韩国专利申请第10-2018-0137599号的权益,其公开内容通过引用整体并入本文。
技术领域
一些发明构思的一些示例实施例涉及存储设备,并且包括包含非易失性存储器的存储设备,和/或操作存储设备的方法。
背景技术
作为非易失性存储器,即使当电源关闭时,闪存也可以保留存储的数据。近来,包括诸如嵌入式多媒体卡(eMMC)、通用闪存(UFS)、固态驱动器 (SSD)等闪存的存储设备已被广泛使用,并且可用于存储或移动大量数据。
发明内容
一些发明构思的一些示例实施例包括操作包括非易失性存储器的存储设备的方法,该非易失性存储器包括存储器单元阵列,并且该存储器单元阵列包括第一平面和第二平面。该方法包括接收用于包括第一平面和第二平面的数据感测的读取命令集;基于读取命令集,同时将存储在第一平面中的第一页面数据加载到第一平面的第一页面缓冲器中,并将第二平面中存储的第二页面数据加载到第二平面的第二页面缓冲器中;接收包括第一平面的数据输出命令集;并且基于数据输出命令集,连续地发送第一页面数据和第二页面数据。
一些发明构思的一些示例实施例包括操作包括包含多个平面的非易失性存储器的存储设备的方法。该方法包括接收用于数据感测的读取-输出命令集;基于读取-输出命令集,感测多个平面中的至少两个平面的数据输出,将存储在多个平面的至少两个平面中的至少两个页面数据加载到分别连接到至少两个平面的至少两个页面缓冲器中,并连续输出至少两个页面数据。
一些发明构思的一些示例实施例包括包含非易失性存储器的存储设备,该非易失性存储器包括存储器单元阵列,该存储器单元阵列包括多个平面,多个平面中的相应平面连接到页面缓冲器,其中非易失性存储器被配置为同时将存储在多个平面的第一平面中的第一页面数据加载到第一平面的第一页面缓冲器,并将存储在多个平面中的第二页面数据加载到第二平面的第二页面缓冲器,并基于数据输出命令集输出第一页面数据和第二页面数据;以及存储器控制器,被配置为将读取命令集和数据输出命令集发送给非易失性存储器,并从非易失性存储器接收第一页面数据和第二页面数据,其中,非易失性存储器还被配置为从存储器控制器接收识别至少两个页面缓冲器中的一个页面缓冲器的列地址的第一数据输出命令集,基于第一数据输出命令集输出加载到一个页面缓冲器中的第一页面数据,并基于第一数据输出命令而不是识别另一页面缓冲器的列地址的另一数据输出命令集来输出加载到另一页面缓冲器中的另一页面数据。
附图说明
通过以下结合附图的详细描述,可以更清楚地理解本发明一些发明构思的示例实施例,其中:
图1是示出根据一些发明构思的示例实施例的存储系统的框图;
图2是示出根据一些发明构思的示例实施例的操作存储设备的方法的流程图;
图3是示出根据一些发明构思的示例实施例的非易失性存储器的实现示例的框图;
图4A和图4B是示出图3的存储器块的电路图;
图5是示出根据一些发明构思的示例实施例的存储器控制器的实现示例的框图;
图6是示出根据一些发明构思的示例实施例的存储设备的多平面读取操作的流程图;
图7A和图7B是用于说明根据一些发明构思的示例实施例的存储设备的多平面读取操作的图;
图8是示出根据一些发明构思的示例实施例的基于多平面读取操作的执行的非易失性存储器的操作的示例的图;
图9是将根据一些发明构思的示例实施例的多平面读取操作与根据比较示例的多平面读取操作进行比较的图;
图10A、图10B和图10C是用于说明根据一些发明构思的示例实施例的存储设备的多平面读取操作的图;
图11是示出根据一些发明构思的示例实施例的存储设备的多平面读取操作的流程图;
图12是用于说明根据一些发明构思的示例实施例的存储设备的多平面读取操作的图;
图13是用于说明根据一些发明构思的示例实施例的存储设备的多平面读取操作的图;
图14是示出根据一些发明构思的示例实施例的存储设备的多平面读取操作的流程图;
图15是用于说明根据一些发明构思的示例实施例的存储设备的多平面读取操作的图;
图16是示出根据一些发明构思的示例实施例的固态驱动器(SSD)的框图;以及
图17是示出根据一些发明构思的示例实施例的移动设备的示例的框图。
具体实施方式
图1是示出根据一些发明构思的示例实施例的存储系统1000的框图。
存储系统1000可以嵌入在电子设备中或在电子设备中实现。电子设备可以被实现为例如个人计算机(PC)、数据服务器、UMPC(超移动PC)、工作站、上网本、网络附加存储(NA)、智能电视、因特网、物联网(IoT)设备和/或便携式电子设备。便携式电子设备可以实现为例如膝上型计算机,移动电话、智能电话、平板电脑、个人数字助理(PDA)、企业数字助理(EDA)、数字静态照相机、数字摄像机、音频设备、便携式多媒体播放器(PMP)、个人导航设备(PND)、MP3播放器、手持式游戏机、电子书和/或可穿戴设备。
参照图1,存储系统1000可以包括存储设备100和主机200。存储设备 100可以包括非易失性存储器(NVM)110和存储器控制器120。在一些示例实施例中,存储器控制器120和/或非易失性存储器阵列110可以包括诸如逻辑电路的硬件;诸如运行软件的处理器的硬件/软件组合;或其组合。例如,包括存储器控制器120和/或非易失性存储器110的存储设备100的处理器和/或主机200可以包括但不限于中央处理单元(CPU)、图形处理单元 (GPU)、算术逻辑单元(ALU)、数字信号处理器、应用处理器、微计算机、现场可编程门阵列(FPGA)、片上系统(SoC)、可编程逻辑单元、微处理器、专用集成电路(ASIC)等。
主机200可以将数据存储在存储设备100中并从存储设备100读取数据。主机200可以指代能够处理数据的数据处理设备,诸如中央处理单元 (CPU)、处理器、微处理器、应用处理器等。例如,主机200可以被实现为片上系统(SoC)。
主机200可以通过各种接口与存储设备100通信。主机200可以将用于存储数据或读取数据的访问请求REQ发送到存储设备100。存储设备100可以基于访问请求REQ,例如从主机200接收的写/读请求来操作,并且可以存储从主机200接收的数据DATA。设备100可以包括NVM 110和存储器控制器120,因此可以称为存储系统。
根据连接到主机200的主机接口协议,存储设备100可以被实现为各种类型的设备中的一个。例如,存储设备100可以是嵌入在电子设备中的内部存储器。例如,存储设备100可以被实现为诸如嵌入式多媒体卡(eMMC)、多媒体卡(MMC)、固态驱动器(SSD)、通用闪存(UFS)、嵌入式通用闪存存储器(eUFS)、缩小尺寸MMC(RS-MMC)、微型MMC、缩小尺寸MMC (RS-MMC)、紧凑型闪存(CF)卡、安全数字(SD)卡、微型安全数字(Micro- SD)卡、迷你安全数字(Mini-SD)卡、极端数字(xD)卡、智能媒体卡、记忆棒等的各种类型的设备中的一个。
NVM 110可以存储数据,并且可以包括包含能够在存储设备100断电时维持数据的非易失性存储器单元的存储器单元阵列10(MCA)。在示例实施例中,NVM 110可以是NAND闪存设备。然而,一些发明构思的一些示例实施例不限于此。例如,在一些示例实施例中,NVM110可以是诸如电阻 RAM(ReRAM)、相变RAM(PRAM)和磁RAM(MRAM)的电阻存储器设备。在本文呈现的一些示例实施例中,NVM 110是NAND闪存设备。
存储器单元阵列10可以被划分为多个平面PL1至PLk。页面缓冲器(或页寄存器)可以连接到多个平面PL1到PLk中的每一个。多个平面PL1至 PLk中的每一个可包括多个存储器块BLK1至BLKn。多个存储器块BLK1 至BLKn中的每一个可以包括多个页面PG1至PGm,其中k、n和m可以是正整数并可以根据示例实施例进行各种改变。
在一些示例实施例中,NVM 110可以包括多个管芯和/或多个芯片。例如,NVM 110可以包括多个芯片,多个芯片中的每一个可以包括多个管芯,并且多个管芯中的每一个可以包括多个平面。
NVM 110可以以页为单位执行编程和读取操作,并以存储器块为单位执行擦除操作。在一些示例实施例中,NVM 110可以执行多平面读取操作 (诸如同时读取操作或顺序读取操作)以从多个平面PL1至PLk中的至少两个平面读取数据。
存储器控制器120可以基于来自主机200的读取请求来控制NVM 110 读取存储在NVM 110中的数据DATA、和/或基于来自主机200的编程请求来将数据DATA写入NVM 110。如本文所使用的,“基于”可以包括“响应于”;例如,示例实施例可以通过等待、接收、检测和/或响应命令来执行“基于”命令的操作以执行操作。存储器控制器120可以包括缓冲存储器125,并且从主机200或NVM 110接收的数据DATA可以被临时存储在缓冲存储器125中,然后被发送到NVM 110或主机200。在一些示例实施例中,存储器控制器120可以通过将指示多平面读取操作的命令集CDM发送到NVM 110来控制NVM 110的多平面读取操作。
在一些示例实施例中,存储器控制器120可以将用于包括多个平面PL1 至PLk中的至少两个的数据感测的读取命令集,以及发送关于该至少两个平面中的选定的一个的数据输出命令集发送到NVM 110。读取命令集和数据输出命令集可以包括用于选择平面、存储器块、页面、列(例如,页面的一部分)等的地址ADD。
基于读取命令集,NVM 110可以同时感测存储在至少两个平面中的每个平面中的页面数据。在一些示例实施例中,NVM 110可以感测存储在第一平面中的第一页面数据和存储在第二平面中的第二页面数据,并将感测到的页面数据加载到页面缓冲器中。因此,存储在至少两个平面中的每个平面中的页面数据可以被同时加载到连接到至少两个平面中的每个平面的至少两个页面缓冲器中(例如,第一平面的至少一部分可以被加载到第一页面缓冲器中,同时第二平面的至少一部分被加载到第二页面缓冲器中)。
在其他示例实施例中,分别加载到至少两个页面缓冲器中的页面数据的至少两个部分可以被顺序输出到存储器控制器120。NVM 110可以将存储在至少两个页面缓冲器中的至少两个页面数据当中的、基于数据输出命令集所选择的一个平面的页面数据输出到存储器控制器120,然后切换平面并将另一平面的页面数据输出到存储器控制器120。也即,NVM110可以通过基于该数据输出命令集而不是标识其他平面的另一数据输出命令集(例如,无需等待和/或接收用于其他平面的数据输出命令集)切换从其输出数据的平面,将加载到至少两个页面缓冲器中的每一个中的页面数据,例如多平面页面数据DATA_MP,输出到存储器控制器120。存储器控制器120可以将从NVM 110接收的多平面页面数据DATA_MP临时存储在缓冲存储器125中,然后将多平面页面数据DATA_MP发送到主机200。
在示例实施例中,数据输出命令集可以包括标识所选择的平面的页面缓冲器的列的列地址,并且NVM 110可以基于列地址存储加载到页面缓冲器中的全部或部分页面数据。
在示例实施例中,存储器控制器120可以基于数据输出命令集接收所选择的平面的页面数据,并将平面切换命令发送到NVM 110,并且NVM 110 可以基于平面切换命令来输出其他平面的页面数据。
在一些示例实施例中,存储器控制器120可以将关于平面PL1至PLk中的至少两个的数据感测和感测数据输出的读出命令集发送到NVM 110,并且NVM 110可以基于读出命令集,同时将存储在至少两个平面中的每一个中的页面数据,例如页面数据的至少两个部分,加载到页面缓冲器中,并且可以连续地将该至少两个页面数据,例如多平面页面数据DATA_MP,输出到存储器控制器120,例如,基于指示输出第一页面数据的读出命令集来输出第一页面数据以及也输出第二页面数据,而不是基于第一数据输出命令集来输出第一页面数据,等待另一数据输出命令集,并基于另一数据输出命令集来输出第二页面数据。
可以参照图2以及图6至图15更详细地描述根据上述各种示例实施例的存储设备100的多平面读取操作。
在根据示例实施例的存储系统1000中,当执行多平面读取操作时,NVM 110可以在输出一个平面的页面数据之后自动地和/或基于平面切换信号输出另一平面的页面数据,而不是基于用于多个平面PL1至PLk中的每一个的多个数据输出命令集来切换(或选择)从其输出数据的平面。相应的,可以减少在切换从其输出数据的平面时引起的延迟,并且因此,可以提高存储设备100和存储系统1000的读取性能。
图2是示出根据一些发明构思的示例实施例的操作存储设备的方法的流程图。图2具体示出了存储设备的读取方法的示例。
参照图2,存储器控制器120可以从主机(图1中的200)接收数据读取请求(S111)。存储器控制器120可以接收读取命令和地址,例如逻辑地址。
存储器控制器120可以基于从主机接收的逻辑地址来确定多平面读取操作(S112)。例如,存储器控制器120可以将逻辑地址转换为与NVM 110的物理存储区域相对应的物理地址,并且当转换过的物理地址指示包括在多个平面中的每个平面中的页面时,确定执行多个平面读取操作。例如,当物理地址指示在第一平面中提供的存储器块的页面和在第二平面中提供的存储器块的页面时,存储器控制器120可以确定执行多平面读取操作。在示例实施例中,存储器控制器120可以对于第一平面的页面和第二平面的对应页面执行多平面读取操作(例如,当多平面读取操作指示第一平面的页面PG1并且也指示第二平面的页面PG1)时。
此后,可以执行多平面读取操作(S120)。存储器控制器120可以将多平面读取命令集发送到NVM 110(S121)。多平面读取命令集可以指示关于 NVM 110的多个平面(至少两个平面)的数据感测。多平面读取命令集可以包括用于多个平面中的每一个的地址(例如,四个平面的地址序列)和代表多平面读取的命令,例如,操作代码。
NVM 110可以基于多平面读取命令集,从多个平面中的每个平面感测页面数据,并将感测到的页面数据加载到分别连接到多个平面的多个页面缓冲器(至少两个页面缓冲器)中(S122)。
当完成页面数据的加载时,可以将加载在多个页面缓冲器中的多个页面数据的部分输出到存储器控制器120。存储器控制器120可以将用于多个平面中的第一平面的数据输出命令集发送到NVM 110(S123)。在该示例中,第一平面旨在表示多个平面中的一个。数据输出命令集可以包括随机访问数据输出命令和第一平面的地址。在示例实施例中,数据输出命令集还可以包括用于选择第一平面的第一页面缓冲器的列的列地址和列选择命令。
NVM 110可以将包括第一页面数据的多个部分的页面数据发送到存储器控制器120(S124)。在该示例中,第一页面数据包括从第一平面感测的页面数据。基于数据输出命令集,NVM 110可以输出第一平面的第一页面数据,然后改变页面数据被输出的平面以输出另一平面的页面数据。也就是说, NVM 110可以改变平面以输出多个平面的多个部分的页面数据,而不是用于另一平面的另一数据输出命令集(例如,无需等待和/或接收用于另一平面的另一数据输出命令集)。
存储器控制器120可以将从NVM 110接收的多个部分的页面数据存储在缓冲存储器125(例如,图1中的125)中(S125)。然后,存储器控制器 120可以将存储在缓冲存储器中的数据(例如,多个部分的页面数据)发送到主机(S113)。
图3是示出根据一些发明构思的示例实施例的非易失性存储器110a的实现示例的框图。非易失性存储器110a可以具有多平面结构。在图3中,非易失性存储器110a被示出为具有包括两个平面的双平面结构,例如,第一平面PL1和第二平面PL2,但是这仅是为了便于描述。非易失性存储器 110a可以实现为包括四个或更多个平面结构的各种多平面结构,诸如四平面结构或六平面结构。
参照图3,非易失性存储器110a可包括存储器单元阵列10、第一行解码器21、第二行解码器22、第一页面缓冲器31、第二页面缓冲器32和外围电路40。外围电路40可以包括控制逻辑41、输入/输出电路42和电压发生器43。
存储器单元阵列10可以包括第一平面PL1和第二平面PL2。第一平面 PL1和第二平面PL2中的每一个可以包括多个存储器块,例如,n个存储器块。包括在第一平面PL1中的存储器块可以被设置为奇数块(例如,BLK1、 BLK3、...、BLK2n-1)。包括在第二平面PL2中的存储器块可以被设置为偶数块(例如,BLK2、BLK4、BLK6、...、BLK2n)。多个存储器块BLK1至BLK2n中的每一个可以包括多个页面,例如m个页面。
多个存储器块BLK1至BLK2n中的每一个可以实现为具有二维(2D) 水平结构或三维(3D)垂直结构的NAND闪存,其中在2D水平结构中,存储器单元被二维地布置在同一层,在3D垂直结构中,非易失性存储器单元被三维地布置。
存储器单元可以是存储一位数据的单级单元(SLC)或存储两位或更多位数据的多级单元(MLC),但不限于此。每个存储器单元可以是存储3位数据的三级单元(TLC)或存储4位数据的四级单元。
第一平面PL1和第二平面PL2的多个存储器块BLK1至BLK2n中的每一个可以通过字线WL、至少一个串选择线SSL和至少一个地选择线GSL 连接到地址解码器,即第一行解码器21或第二行解码器22。第一平面PL1 的存储器块BLK1、BLK3、...、BLK2n-1可以连接到第一行解码器21。第二平面PL2的存储器块BLK2、BLK4、BLK6、...、BLK2n可以被耦合到第二行解码器22。
第一平面PL1和第二平面PL2的多个存储器块BLK1至BLK2n可以通过位线BL连接到第一页面缓冲器31和/或第二页面缓冲器32。第一平面 PL1的存储器块BLK1、BLK3、...、BLK2n-1可以连接到第一页面缓冲器31。第二平面PL2的存储器块BLK2、BLK4、BLK6、...、BLK2n可以连接到第二页面缓冲器32。
第一行解码器21和第二行解码器22中的每一个可以通过字线WL、至少一个串选择线SSL和至少一个地选择线GSL连接到对应的平面PL1或 PL2,并且可以使用从控制逻辑41提供的行地址来选择字线WL中的一个、串选择线SSL和地选择线GSL。
第一页面缓冲器31和第二页面缓冲器32中的每一个可以通过位线BL 连接到对应的平面PL1或PL2,并且可以基于从控制逻辑41提供的列地址来选择一些位线BL。根据操作模式,第一页面缓冲器31和第二页面缓冲器 32可以作为写入驱动器或读出放大器来操作。在读取操作中,第一页面缓冲器31和第二页面缓冲器32可以作为读出放大器来操作,以感测和加载存储在存储器单元阵列10中的页面数据。在写入操作中,第一页面缓冲器31和第二页面缓冲器32可以作为写入驱动器来操作以编程要写入存储器单元阵列10中的页面数据。
第一行解码器21和第一页面缓冲器31可以基于所提供的地址(例如,行地址和列地址)来选择第一平面PL1的存储器块BLK1、BLK3、...、BLK2n- 1中的一个以及所选择的存储器块的多个页面PG1至PGm中的一个,并在所选择的页面上执行读取操作或写入操作(编程操作)。第一行解码器21和第一页面缓冲器31还可以选择第一平面PL1的存储器块BLK1、BLK3、...、 BLK2n-1中的一个,并对所选择的存储器块执行电擦除操作。
第二行解码器22和第二页面缓冲器32可以以与第一行解码器21和第一页面缓冲器31的操作相同或类似的方式对第二平面PL2执行读取操作、写入(编程)操作、擦除操作。
控制逻辑41可以控制非易失性存储器110a的整体操作(编程/读取/擦除等)。控制逻辑41可以基于从存储器控制器(图1的120)接收的命令 CMD、地址ADD和控制信号CTRL(例如,写使能信号、读使能信号、锁存使能信号等),输出用于将数据编程到存储器单元阵列10的第一平面PL1 和第二平面PL2、读取数据、或者擦除数据的各种信号。例如,控制逻辑41可以输出行地址、列地址和电压控制信号。控制逻辑41还可以向存储器控制器120发送指示非易失性存储器110a的状态的状态信号R/B#(例如,R 指示就绪,或B#指示忙)。在一些示例实施例中,控制逻辑41可以包括诸如逻辑电路的硬件;硬件/软件组合,例如运行软件的处理器;或其组合。例如,控制逻辑41的处理器可以包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、算术逻辑单元(ALU)、数字信号处理器、应用程序处理器、微型计算机、现场可编程门阵列(FPGA)、片上系统(SoC)、可编程逻辑单元、微处理器、专用集成电路(ASIC)等。
在一些示例实施例中,控制逻辑41可以基于从存储器控制器120接收的命令集来执行多平面读取操作。例如,控制逻辑41可以控制元件(例如,非易失性存储器110a的第一行解码器21和第二行解码器22、第一页面缓冲器31和第二页面缓冲器32、输入/输出电路42和电压发生器43)以基于从存储器控制器120接收的命令集(例如,读取命令集和写入命令集)和/或基于读出命令集来执行多平面读取操作。
输入/输出电路42可以从存储器控制器120接收并缓冲数据DATA,并且将数据DATA发送到第一页面缓冲器31或第二页面缓冲器32,或者在控制逻辑41的控制下,缓冲从第一页面缓冲器31或第二页面缓冲器32输出的数据DATA,并通过多个输入/输出引脚(或数据总线)将数据DATA发送到存储器控制器120。在一些示例实施例中,输入/输出电路42可以以一个字节(例如8位)或两个字节(例如16位)为单位,来发送和接收数据DATA。
电压发生器43可以生成用于对存储器单元阵列10执行编程、读取和擦除操作的各种电压VOL。例如,电压发生器43可以生成提供给字线WL的编程电压(或写入电压)、读取电压、编程禁止电压、读取禁止电压、验证电压和/或编程验证电压。而且,电压发生器43可以根据非易失性存储器110a 的操作生成提供给串选择线SSL和地选择线GSL的电压。
可以通过第一行解码器21和第二行解码器22以及第一页面缓冲器31 和第二页面缓冲器32将在电压发生器43中生成的电压VOL提供给多个存储器块BLK1至BLK2,因此,可以对多个存储器块BLK1至BLKk执行写入操作、读取操作、擦除操作和验证操作(例如,编程验证、擦除验证等)。
图4A和图4B是示出图3的存储器块BLK的电路图。图4A显示了被实现为具有二维水平结构的NAND闪存的存储器块BLK。图4B显示了被实现为具有三维垂直结构的NAND闪存的存储器块BLK。
参照图4A,可以将存储器单元MC二维地布置在同一层上。存储器块 BLK可以包括例如d个(d是2或大于2的整数)串STR,其中八个存储器单元MC串联连接。每个串STR可以包括连接到所连接的存储器单元MC 的两端的串选择晶体管SST和地选择晶体管GST。根据一些示例实施例,可以不同地改变串STR的数量、字线WL的数量和位线BL的数量。连接到一个字线(例如,第五字线WL5)的存储器单元MC可以对应于一个物理页面。如果存储器单元MC是单级存储器单元,则一个物理页面可以存储一个页面数据。当存储器单元MC是多级存储器单元时,一个物理页面可以存储多个部分的页面数据。例如,当存储器单元MC是存储两位数据的多级单元时,存储在构成一个物理页(即连接到一个字线的存储器单元MC)的存储器单元MC中的最低有效位(LSB),可以构成第一类型的页面数据,并且存储在存储器单元MC中的最高有效位(MSB)可以构成第二类型的页面数据。因此,两个部分的页面数据可以存储在连接到一个字线的存储器单元MC中。
参照图4B,存储器块BLK可包括多个NAND单元串NS11至NS33、多个字线WL1至WL8、多个位线BL1至BL3、多个地选择线GSL1至GSL3,多个串选择线SSL1到SSL3、以及公共源线CSL。根据一些示例实施例,可以不同地改变单元串的数量、字线的数量、位线的数量、地选择线的数量和串选择线的数量。
单元串NS21和NS31可以被设置在第一位线BL1和公共源极线CSL之间。单元串NS12、NS22和NS32可以被设置在第二位线BL2和公共源极线 CSL之间。单元串NS13、NS23和NS33可以被设置在第三位线BL3和公共源极线CSL之间。每个单元串(例如,NS11)可以包括串联连接的串选择晶体管SST、多个存储器单元MC1至MC8和地选择晶体管GST。在一些示例实施例中,伪(dummy)单元可以被布置在串选择晶体管SST、多个存储器单元MC1至MC8、地选择晶体管GST和多个存储器单元MC1至MC8 之间。
串选择线SSL1至SSL3可以彼此分离。串选择晶体管SST的栅极可以连接到对应的串选择线SSL1至SSL3。地选择线GSL1至GSL3也可以彼此分离。地选择晶体管GST的栅极可以连接到对应的地选择线GSL1到GSL3。在一些示例实施例中,地选择线GSL1至GSL3可以彼此连接。串选择晶体管SST可以连接到对应的位线BL1至BL3。地选择晶体管GST可以连接到公共源极线CSL。
多个存储器单元MC1至MC8可以分别连接到对应的字线WL1至WL8。位于与衬底(或地选择晶体管GST)相同高度的存储器单元MC可以共同连接到一条字线。位于不同高度的存储器单元MC可以分别连接到不同的字线 WL1至WL8。例如,第一存储器单元MC1可以共同连接到第一字线WL1,第二存储器单元MC2可以共同连接到第二字线WL2。
连接到一个字线并且被同时编程的存储器单元MC可以被包括在例如由相同的串选择线SSL所选择的单元串中。连接到一个字线的存储器单元 MC可以对应于一个物理页面。例如,在图4B中,连接到第四字线WL4的存储器单元MC可以对应于三个物理页面。
如上面参照图4A所描述的,当存储器单元MC是单级单元时,一个物理页可以存储一个页面数据,并且当存储器单元MC是多级单元时,一个物理页可以存储多个部分的页面数据。例如,当存储器单元MC是存储两位数据的多级单元时,可以将六个部分的页面数据存储在第四字线WL4的存储器单元MC中。
图5是示出根据一些发明构思的一些示例实施例的存储器控制器120a 的实现示例的框图。
参照图5,存储器控制器120a可包括处理器121、随机存取存储器(RAM) 122、纠错码(ECC)电路123、主机接口电路124、缓冲存储器125和NVM 接口电路126。存储器控制器120a的元件,例如,处理器121、RAM 122、 ECC电路123、主机接口电路124、缓冲存储器125和NVM接口电路126,可以经由总线127彼此通信。
处理器121可以包括CPU或微处理器,并且可以控制存储器控制器120a 的整体操作。在一些示例实施例中,处理器121可以实现为多核处理器,例如,双核处理器或四核处理器。
RAM 122可以存储用于控制存储器控制器120a的固件和数据。所存储的固件和数据可以由处理器121驱动或处理。
被实现为固件的存储器控制器120a的软件层结构可以包括主机接口层、闪存转换层(FTL)、闪存接口层等。
处理器121可以控制主机接口电路124以通过驱动主机接口层从主机接收数据和/或将数据存储在缓冲存储器125中。处理器121可以通过驱动FTL 在从主机提供的逻辑地址与NVM 110的物理地址之间执行地址映射操作,并且可以执行图1的NVM 110的主要操作,诸如垃圾收集、坏块管理、读取回收、读取替换等。此外,处理器121可以通过驱动闪存接口层来管理 NVM 110的写入操作、读取操作和/或擦除操作。例如,根据一些发明构思的一些示例实施例,处理器121可以基于闪存接口层来控制NVM接口电路 126以根据多平面读取操作来将命令集发送到NVM 110。
ECC电路123可以检测和/或校正包括在从NVM 110接收的数据中的错误。
缓冲存储器125可以存储从主机接收的写入数据或从NVM 110读取的读取数据。缓冲存储器125可以被实现为易失性存储器,例如动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)等。缓冲存储器125可以被实现为各种类型的非易失性存储器,例如电阻性非易失性存储器,包括 (但不限于)磁性RAM(MRAM)、相变RAM(RAM),或电阻性RAM (ReRAM)、闪存、纳米浮栅存储器(NFGM)、聚合物随机存取存储器 (PoRAM)和铁电随机存取存储器(FRAM)。在一些示例实施例中,缓冲存储器125可以被实现为存储器控制器120a外部的单独存储器设备。
图6是示出根据一些发明构思的一些示例实施例的存储设备的多平面读取操作的流程图。图7A和图7B是用于说明根据一些发明构思的一些示例实施例的存储设备的多平面读取操作的图。图7A和图7B以及类似的以下附图被呈现为指令的通信的水平时间线。另外,在图7A和图7B以及类似的下图中,圆圈表示命令,例如可以由存储器控制器120发送到非易失性存储器110的;矩形表示参数,例如平面、页面或列的地址;而六边形表示由非易失性存储器110执行的操作。
参照图7A和图7B描述了根据图6中的一些发明构思的示例实施例的存储设备的多平面读取操作。为了便于描述,假设NVM 110包括第一平面和第二平面,并且存储设备执行双平面读取操作。
存储器控制器120可以将多平面读取命令集MPR发送到NVM 110 (S131)。例如,如图7A和图7B所示,多平面读取命令集MPR可以包括读取命令RDS、第一平面的地址ADD_PL1、多平面读取命令MRD、第二平面的地址ADD_PL2和读取确认命令RDC。存储器控制器120可以经由NVM 110之间的输入/输出总线I/Ox将多平面读取命令集MPR发送到NVM 110。在一些示例实施例中,读取命令RDS可以是标准读取命令,例如,00h(即十六进制代码“00”),并且可以指示读序列的开始。多平面读取命令MRD 是指示同时被执行的多平面的读取的命令,并且可以是,例如32h。读取确认命令RDC是指示读取序列的结束的命令,即,读取命令集的结束,并且可以是,例如30h。第一平面的地址ADD_P1和第二平面的地址ADD_P2的地址可以分别包括第一平面和第二平面的行地址和列地址。在一些示例实施例中,存储器控制器120可以在一个写周期将命令中的每一个发送到NVM 110,并且可以在多个写周期期间针对每个命令将地址发送到NVM 110。例如,行地址可以针对两个写周期被发送,并且列地址可以针对三个写周期被发送。在该示例中,写周期代表由存储器控制器120提供给NVM 110的写使能信号的上升或轮询时段。
NVM 110可以基于地址选择平面、存储器块和/或页面。当存储器单元是多级单元时,页面可以包括物理页面和逻辑页面,例如,根据页面数据的类型(例如,MSB页面数据、LSB页面数据等)的页面。
在一些示例实施例中,第一平面的地址ADD_P1和第二平面的地址 ADD_PL2可以对应于相同的页面(例如,第一平面的第一页PG1以及第二平面的第一页PG1)。在第一平面和第二平面中执行对应页面的数据感测,其中数据感测条件(例如,读取电压、读取次数等)可以是相同或相似的,使得用于第一平面的数据感测的时段和用于第二平面的数据感测的时段可以相同或相似。
当完成多平面读取命令集MPR的接收时,NVM 110可以将忙碌状态信号发送到存储器控制器120(S132)。例如,如图7A和图7B中所示,NVM 110可以将状态信号R/B#设置为逻辑低电平,从而生成指示可以不发送和/ 或接收命令、地址和/或数据的状态的忙状态信号。
可以分别从第一平面和第二平面感测和加载第一页面数据和第二页面数据(S133)。例如,如图7A和图7B中所示,可以在tR时段期间将存储在第一平面中的第一页面数据加载到第一平面的第一页面缓冲器中,并且将存储在第二平面中的第二页面数据加载到第二页面缓冲器中。
当完成页面数据的加载时,NVM 110可以将就绪状态信号发送到存储器控制器120(S134)。NVM 110可以将状态信号R/B#设置为逻辑高电平,从而发送指示在其中可以发送和/或接收命令、地址或数据的状态的就绪状态信号。
在一些示例实施例中,存储器控制器120可以将用于第一平面的数据输出命令集RDO_P1发送到NVM 110(S135)。例如,如图7A中所示,用于第一平面的数据输出命令集RDO_P1可以包括读取命令RDS、第一平面的地址ADD_PL1、选择列命令CC、列地址COL和选择列确认命令CCC。选择列命令CC是指示页面缓冲器的列的选择的命令,并且可以是例如05h或06h。列地址COL可以指示要输出的数据位于页面缓冲器上的列的位置。选择列确认命令CCC是指示数据输出命令集的结束的命令,并且可以是,例如E0h。
在一些示例实施例中,NVM 110可以基于用于第一平面的数据输出命令集RDO_P1将第一平面的第一页面数据发送到存储器控制器120(S136)。参照图7A,NVM 110可以经由输入/输出总线I/Ox将第一页面数据输出到存储器控制器120(DO_PL1)。如上面参照图3所描述的,NVM 110可以以一个字节或两个字节为单位将数据输出到存储器控制器120。例如,当一个页面是16KB(千字节)时,页面数据可以以一个字节为单位连续输出大约 16000个读取周期。在该示例中,读取周期代表由存储器控制器120提供给 NVM 110的读取使能信号的上升或轮询时段。
在一些示例实施例中,NVM 110可以,基于用于第一平面的数据输出命令集RDO_P1的选择列命令CC和列地址COL,来选择要输出的数据位于其上的第一页面缓冲上的列,并将来自所选择的列的数据输出到第一页面缓冲区的最后一列。换句话说,NVM 110可以基于选择列命令CC和列地址 COL输出至少一部分的第一页面数据。存储器控制器120可以将所接收的第一页面数据存储在缓冲存储器125(图1)中(S137)。
在一些示例实施例中,当完成第一页面数据的输出时,NVM 110可以将第二平面的第二页面数据发送到存储器控制器120(S138)。当完成第一页面数据的输出时,NVM 110可以改变要从其输出数据的平面。NVM 110可以将要从其输出数据的平面从第一平面改变到第二平面,并经由输入/输出总线 I/Ox将加载在第二平面的第二页面缓冲器中的第二页面数据输出到存储器控制器120(DO_PL2),然后可以输出所有的第二页面数据。存储器控制器120可以将所接收的第二页面数据存储在缓冲存储器125中(S139)。因此,可以完成多平面读取操作。
在一些示例实施例中,如图7B中所示,存储器控制器120可以将用于第二平面的数据输出命令集RDO_P2发送到NVM 110。用于第二平面的数据输出命令集RDO_P2可以包括读取命令RDS、第二平面ADD_PL2的地址、选择列命令CC、列地址COL和选择列确认命令CCC。
基于用于第二平面的数据输出命令集RDO_P2,NVM 110可以经由输入 /输出总线I/Ox将加载在第二平面的第二页面缓冲器中的至少一部分的第二页面数据发送到存储器控制器120(DO_PL2)。当完成第二页面数据的输出时,可以将要输出数据的平面从第二平面改变到第一平面。加载在第一平面的第一页面缓冲器中的第一页面数据可以经由输入/输出总线I/Ox输出到存储器控制器120(DO_PL1),然后可以输出所有第一页面数据。
图8是示出根据一些发明构思的示例实施例的、基于执行多平面读取操作的非易失性存储器的操作的示例的图。参照图7A描述图8。
基于多平面读取命令集MPR,存储在第一平面PL1的第三存储器块 BLK3的第二页面PG2中的第一页面数据可以被加载到连接到第一平面PL1 的第一页面缓冲器31中,以及存储在第二平面PL2的第八存储器块BLK8 的第二页PG2中的第二页面数据可以被加载到连接到第二页PL2的第二页面缓冲器32中(①)。第一页面数据和第二页面数据可以同时被分别加载到第一页面缓冲器31和第二页面缓冲器32中。
基于包括在用于第一平面PL1的数据输出命令集RDO_P1中的第一平面PL1的地址ADD_PL1,可以将要输出数据的平面确定为第一平面PL1,并且指针可以指示在第一页面缓冲器31上的列,例如,开始列Col_S,其中数据的输出将基于该列COL开始。指针可以从起始列Col_S移位到最后一列,因此可以通过输入/输出电路42输出从起始列Col_S的数据到最后列的数据的至少一部分的第一页面数据(②)。此后,可以将要输出数据的平面从第一平面PL1改变到第二平面PL2。指针可以指示第二页面缓冲器32的第一列,并且可以从第二页面缓冲器32的第一列移位到最后一列。因此,可以通过输入/输出电路42输出所有第二页面数据(③)。
图9是将根据一些发明构思的示例实施例的、多平面读取操作与根据比较示例的多平面读取操作进行比较的图。
参照图9,第一序列代表用于执行根据一些发明构思的示例实施例的多平面读取操作的命令集序列,并且第二序列代表用于执行根据比较示例的多平面读取操作的命令集序列。省略了接收多平面读取命令集的操作,即tR时段之前的操作。
如上所述,根据一些发明构思的一些示例实施例的第一序列,可以基于用于第一平面的数据输出命令集RDO_P1输出第一平面的数据(例如,第一页面数据)(DO_PL1),并且可以立即输出第二平面的数据(例如,第二页面数据)(DO_PL2)。因此,多平面读取操作可以在Ta点终止。此后,可以执行另一读取操作,例如多平面读取操作或标准读取操作。
然而,根据基于比较示例的第二序列,可以基于用于第一平面的数据输出命令集RDO_P1输出第一平面的数据(DO_PL1),此后,当存储器控制器 120将用于第二平面的数据输出命令集RDO_P2发送到NVM 110时,NVM 110可以基于用于第二平面的数据输出命令集RDO_P2来输出第二平面的数据(DO_PL2)。因此,多平面读取操作可以在Tb时间终止。
如上所述,根据基于比较示例的第二序列,改变要从其输出数据的平面通常涉及其中接收用于多个平面中的每一个的数据输出命令集的时间段或延迟,即完成平面改变的一段时间或延迟。然而,根据一些发明构思的一些示例实施例的第一序列,可以减小平面改变的时段或延迟。
图10A、图10B和图10C是用于说明根据一些发明构思的一些示例实施例的、存储设备的多平面读取操作的图。在图10A、图10B和图10C中,假设NVM 110包括第一平面PL1至第四平面PL4,并且存储设备对4平面执行多平面读取操作。
参照图10A,存储器控制器120可以将指示用于4平面的多平面读取操作的多平面读取命令集MPR发送到NVM 110。多平面读取命令集MPR可以包括读取命令RDS、第一平面的地址ADD_PL1、多平面读取命令MRD、读取命令RDS、第二平面的地址ADD_PL2、多平面读取命令MRD、读取命令RDS、第三平面的地址ADD_PL3、多平面读取命令MRD、读取命令RDS、第四平面的地址ADD_PL4和读取确认命令RDC。
当完成多平面读取命令集MPR的接收时,NVM 110可以通过将状态信号R/B#设置为逻辑低电平来将忙状态信号发送到存储器控制器120。在 NVM 110中,在tR时段期间,存储在第一平面PL至第四平面PL4中的第一至第四页面数据可以同时被分别加载到第一至第四页面缓冲器中。第一至第四页面缓冲器可以分别连接到第一平面PL至第四平面PL4。
当完成页面数据的加载时,NVM 110可以通过将状态信号R/B#设置为逻辑高电平来将就绪状态信号发送到存储器控制器120。存储器控制器120 可以将用于第一平面PL1的数据输出命令集RDO_P1发送到NVM 110,并且NVM 110可以基于用于第一平面PL1的数据输出命令集RDO_P1来将第一平面PL1的第一页面数据输出到存储器控制器120(DO_PL1)。当完成第一页面数据的输出时,NVM 110可以将要从其输出数据的平面从第一平面 PL1改变为第二平面PL2,并将第二平面PL2的第二页面数据输出到存储器控制器120(DO_PL2)。当完成第二页面数据的输出时,NVM 110可以将要从其输出数据的平面从第二平面PL2改变为第三平面PL3,并将第三平面 PL3的第三页面数据输出到存储器控制器120(DO_PL3)。当完成第三页面数据的输出时,NVM 110可以将要从其输出数据的平面从第三平面PL3改变为第四平面PL4,并将第四平面PL4的第四页面数据输出到存储器控制器 120(DO_PL4)。因此,可以完成4平面的多平面读取操作。
参照图10B,在完成页面数据的加载之后,存储器控制器120可以将用于第三平面PL3的数据输出命令集RDO_P3发送到NVM 110,并且NVM 110可以基于用于第三平面PL3的数据输出命令集RDO_P3来将第三平面 PL3的第三页面数据输出到存储器控制器120(DO_PL3)。此后,通过顺序地改变要从其输出数据的平面,NVM 110可以将第四平面PL4的第四页面数据、第一平面PL1的第一页面数据和第二平面PL2的第二页面数据顺序输出到存储器控制器120。在图10B中,按照在第三平面PL3之后以第四平面PL4、第一平面PL1和第二平面PL2的顺序改变将要从其输出数据的平面,但是一些示例实施例不限于此。在输出来自对应于接收到的数据输出命令集的平面的页面数据之后,平面改变的序列可能发生。
参照图10C,在完成页面数据的加载之后,存储器控制器120可以将用于第一平面PL1的数据输出命令集RDO_P1发送到NVM 110,并且NVM 110可以基于用于第一平面PL1的数据输出命令集RDO_P1来将第一平面 PL1的第一页面数据输出到存储器控制器120(DO_PL1)。然后,NVM 110 可以将要输出数据的平面从第一平面PL1改变为第二平面PL2,并将第二平面PL2的第二页面数据输出到存储器控制器120(DO_PL2)。
另一方面,在接收到第二页面数据之后,存储器控制器120可以将用于第三平面PL3(或第四平面PL4)的数据输出命令集RDO_P3发送到NVM 110。NVM 110可以基于第三平面PL3的数据输出命令集RDO_P3来将第三平面PL3的第三页面数据输出到存储器控制器120(DO_PL3)。此后, NVM 110可以将从其输出数据的平面从第三平面PL3改变为第四平面PL4,并将第四平面PL4的第四页面数据输出到存储器控制器120(DO_PL4)。
图11是示出根据一些发明构思的一些示例实施例的存储设备的多平面读取操作的流程图。图12是用于说明根据一些发明构思的一些示例实施例的存储设备的多平面读取操作的图。
参照图12描述了根据图11中的一些发明构思的示例实施例的、存储设备的多平面读取操作。为了便于描述,假设NVM 110包括第一平面和第二平面,并且存储设备执行双平面读取操作。
参照图11和图12,存储器控制器120可以将多平面读取命令集MPR发送到NVM 110(S141)。当完成多平面读取命令集的接收时,NVM 110可以将忙状态信号,例如逻辑低电平的状态信号R/B#,发送到存储器控制器120 (S142),并在tR时段期间分别从第一平面和第二平面感测和加载第一页面数据和第二页面数据(S143)。
当完成页面数据的加载时,NVM 110可以将就绪状态信号,例如逻辑高电平的状态信号R/B#,发送到存储器控制器120(S144)。存储器控制器120 可以将用于第一平面RDO_P1的数据输出命令集发送到NVM 110(S145)。
存储器控制器120可以将第一平面的第一页面数据发送到存储器控制器 120(S146)。NVM 110可以基于用于第一平面RDO_P1的数据输出命令集将第一页面数据输出到存储器控制器120(DO_PL1)。
存储器控制器120可以将所接收的第一页面数据存储在缓冲存储器125 (图1)中(S147)。操作S141至S147可以分别与参照图6描述的操作S141 至S137相同或相似。因此,省略其详细说明。
在一些示例实施例中,存储器控制器120可以将用于平面改变的平面改变命令(PC)发送到非易失性存储器148。平面改变命令PC是用于指示输出数据的平面改变的命令,并且可以是,例如3Bh。与数据输出命令集不同,平面改变命令PC可以不包括要改变的平面的地址和/或列地址,并且用于发送平面改变命令PC的时段或延迟可以非常短。例如,存储器控制器120可以在一个写周期期间将平面改变命令PC发送到NVM 110。
NVM 110可以基于所接收的平面改变命令PC将第二平面的第二页面数据发送到存储器控制器120(S149)。NVM 110可以基于所接收的平面改变命令PC将要从其输出数据的平面从第一平面改变到第二平面,并输出第二平面的第二页面数据(DO_PL2)。
存储器控制器120可以将所接收的第二页面数据存储在缓冲存储器125 中(S150)。因此,可以完成多平面读取操作。
图13是用于说明根据一些发明构思的示例实施例的、存储设备的多平面读取操作的图。在图13中,假设NVM 110包括第一平面PL至第四平面 PL4,并且存储设备对4平面执行多平面读取操作。
参照图13,存储器控制器120可以将指示用于4平面的多平面读取操作的多平面读取命令集MPR发送到NVM 110。
当完成多平面读取命令集MPR的接收时,NVM 110可以通过将状态信号R/B#设置为逻辑低电平来将忙状态信号发送到存储器控制器120。在 NVM 110中,在tR时段期间,可以将存储在第一平面PL至第四平面PL4 中的第一至第四页面数据分别同时加载到第一至第四页面缓冲器中。
当完成页面数据的加载时,NVM 110可以通过将状态信号R/B#设置为逻辑高电平来将就绪状态信号发送到存储器控制器120。存储器控制器120 可以将用于第一平面PL1的数据输出命令集RDO_P1发送到NVM 110,并且NVM 110可以基于用于第一平面PL1的数据输出命令集RDO_P1来将用于第一平面PL1的第一页面数据输出到存储器控制器120(DO_PL1)。
当接收到第一页面数据时,存储器控制器120可以将平面改变命令PC 发送到NVM110。NVM 110可以基于平面改变命令PC将要从其输出数据的平面从第一平面PL1变为第二平面PL2,并将第二平面PL2的第二页面数据输出到存储器控制器120(DO_PL2)。
当接收到第二页面数据时,存储器控制器120可以将平面改变命令PC 发送到NVM110。NVM 110可以基于平面改变命令PC将要从其输出数据的平面从第二平面PL2改变到第三平面PL3,并将第三平面PL3的第三页面数据输出到存储器控制器120(DO_PL3)。
当接收到第三页面数据时,存储器控制器120可以将平面改变命令PC 发送到NVM110。NVM 110可以基于平面改变命令PC将要从其输出数据的平面从第三平面PL3改变到第四平面PL4,并将第四平面PL4的第四页面数据输出到存储器控制器120(DO_PL4)。
如上所述,根据一些示例实施例,当接收到一个平面的页面数据时,存储器控制器120可以将平面改变命令PC发送到NVM 110,并且NVM 110 可以基于平面改变命令PC通过改变要从其输出数据的平面来输出多个平面的页面数据。
另一方面,在其他示例实施例中,在输出第一页面数据之后,NVM 110 基于平面改变命令PC按照第二平面PL2、第三平面PL3和第四平面PL4的顺序来改变要从其输出数据的平面,但不限于此。可以不同地设置基于平面改变命令PC来改变平面的序列。
图14是示出根据一些发明构思的一些示例实施例的、存储设备的多平面读取操作的流程图。图15是用于说明根据一些发明构思的一些示例实施例的存储设备的多平面读取操作的图。
参照图15描述了根据图14的示例实施例的存储设备的多平面读取操作。为了便于描述,假设NVM 110包括第一平面和第二平面,并且存储设备执行双平面读取操作。
参照图14和图15,存储器控制器120可以将读取-输出命令集MPRO 发送到NVM 110(S151)。例如,如图15中所示,读取-输出命令集MPRO 可以包括读取命令RDS、第一平面的地址ADD_PL1、多平面读取命令MRD、读取命令RDS、第二平面的地址ADD_PL2和顺序读取命令SRD。顺序读取命令SRD是指示读取-输出命令集MPRO的结束和多平面的所有感测页面数据的连续输出的命令,并且可以是,例如3Ah。存储器控制器120可以在写周期的一个周期期间将顺序读取命令SRD发送到NVM 110。
当完成读取-输出命令集MPRO的接收时,NVM 110可以将忙状态信号,例如逻辑低电平的状态信号R/B#,发送到存储器控制器120(S152),并且在tR时段期间分别从第一平面和第二平面感测并加载第一页面数据和第二页面数据(S153)。
当完成页面数据的加载时,NVM 110可以将就绪状态信号,例如逻辑高电平的状态信号R/B#,发送到存储器控制器120(S154)。
然后,NVM 110可以将第一页面数据发送到存储器控制器120(S155)。 NVM 110可以基于读取-输出命令集MPRO的顺序读取命令SRD而不是用于第一平面或第二平面的数据输出命令集(例如,无需等待和/或接收用于第一平面或第二平面的数据输出命令集RDO_P1或RDO_P2(DO_PL1))来将第一页面数据输出到存储器控制器120。存储器控制器120可以将所接收的第一页面数据存储在缓冲存储器125(图1)中(S156)。
然后,NVM 110可以将第二平面的第二页面数据发送到存储器控制器 120(S157)。NVM 110在基于读取-输出命令集MPRO的顺序读取命令SRD 输出第一页面数据之后可以将要从其输出数据的平面从第一平面变为第二平面,并且可以输出第二平面的页面数据(DO_PL2)。
存储器控制器120可以将所接收的第二页面数据存储在缓冲存储器125 中(S158)。从而,可以完成多平面读取操作。
另一方面,尽管在一些示例实施例中描述了关于2平面的多平面读取操作,但是根据其他示例实施例的多平面读取操作可以应用于4平面或者6面。例如,当接收到包括顺序读取命令SRD的用于4平面的读取-输出命令集 MPRO时,NVM 110可以将存储在四个平面中的每一个中的四个页面数据加载到页面缓冲器中,然后连续输出四个页面数据。
图16是示出根据一些发明构思的示例实施例的SSD 2200的框图。
参照图16,SSD系统2000可以包括主机2100和SSD 2200。SSD 2200 可以经由信号连接器SGL向主机2100发送信号以及从主机2100接收信号。 SSD 2200还可以经由电源连接器从主机2100接收电力。
SSD 2200可以包括SSD控制器2210、缓冲存储器2220和多个存储器设备2230、2240和2250。在这种情况下,SSD 2200可以使用一些示例实施例来实现,诸如图1至图15中所示的那些。
具体地,图1的存储设备100可以被应用为SSD 2220。SSD控制器2210 可以经由信道Ch1,Ch2,…,到Chn与多个存储器设备2230、2240和2250 (例如,闪存设备)通信。SSD控制器2210可以临时存储从缓冲存储器2220 中的多个存储器设备2230、2240和2250读取的数据(例如多平面页面数据),然后将数据发送到主机2100。此外,SSD控制器2210可以将由主机 2100接收的数据(例如,写入数据)临时存储在缓冲存储器2220中,然后将数据发送到多个存储器设备2230、2240和2250中的至少一个。
根据上述一些发明构思的一些示例实施例的存储设备不仅可以安装或应用于SSD系统2000,还可以安装在或应用于存储卡系统、计算系统、UFS 等。此外,根据一些发明构思的一些示例实施例的存储设备的多平面读取操作的方法可以应用于其上安装有非易失性存储器的各种电子系统。
图17是示出根据一些发明构思的示例实施例的移动设备3000的示例的框图。
参照图17,移动设备3000可以包括应用处理器3100、通信模块3200、显示/触摸模块3300、存储设备3400和缓冲RAM 3500。
应用处理器3100控制移动设备3000的整体操作。通信模块3200可以被实现为控制与外部的有线/无线通信。显示/触摸模块3300可以显示由应用处理器3100处理的数据或者从触摸板接收数据。
缓冲RAM 3500可以被实现为临时存储移动设备3000的处理操作所需的数据。
存储设备3400可以被实现为存储用户的数据。存储设备3400可以是存储卡、eMMC、SSD或UFS设备。存储设备3400可以被实现为图1中所示的存储设备100。根据一些发明构思的一些示例实施例的存储设备3400可以根据多平面操作方法减少读取操作的时段或延迟。
可以使用各种类型的封装来实现根据一些发明构思的一些示例实施例的存储设备。在一些示例实施例中,可以使用诸如封装上封装(PoP)、球栅阵列(BGA)、芯片级封装(CSP)、塑料引线芯片载体(PLCC)、塑料双列直插式封装(PDIP)、Waffle包装模具、Waffle形式模具、板上芯片(COB)、陶瓷双列直插式封装(CERDIP)、塑料公制四方扁平封装(MQFP)、薄型四方扁平封装(TQFP)、小型(SOIC)、收缩小外形封装(SSOP)、薄型小外形 (TSOP)、薄型四方扁平封装(TQFP)、系统级封装(SIP)、多芯片封装(MCP)、晶圆级封装(WFP)、晶圆级处理堆栈包(WSP)等来安装存储设备。
已经参照其一些示例实施例示出并描述了一些发明构思。这里使用的术语仅用于描述一些示例实施例的目的,并不旨在限制本公开。在不脱离由所附权利要求限定的一些发明构思的精神和范围的情况下,可以在其中进行形式和细节上的各种改变。
如本文所使用的,诸如“当”和“同时”的术语可以但不一定旨在暗示诸如事件序列之类的时间顺序关系。例如,被描述为在“当”或“...的同时”满足条件时发生的操作可以与条件的满足同时执行,或者在条件满足期间,或者在条件满足之后,或者因为满足条件或是已经满足。类似的,诸如将操作与条件相关联的“在条件下”之类的短语可以指示操作与条件的满足同时执行,或者在条件满足期间执行,或者因为条件满足或已经满足等。所有这些在理论上和逻辑上可能并且与其他陈述不矛盾的说明,都应包括在本公开内容中,其范围应理解为仅受权利要求的限制。
Claims (20)
1.一种操作包括非易失性存储器的存储设备的方法,所述非易失性存储器包括存储器单元阵列,所述存储器单元阵列包括第一平面和第二平面,所述方法包括:
接收用于所述第一平面和所述第二平面的数据感测的读取命令集;
基于所述读取命令集,同时将存储在所述第一平面中的第一页面数据加载到所述第一平面的第一页面缓冲器以及将存储在所述第二平面中的第二页面数据加载到所述第二平面的第二页面缓冲器中;
接收包括所述第一平面的数据输出命令集;以及
基于所述数据输出命令集连续发送第一页面数据和第二页面数据。
2.如权利要求1所述的方法,其中,
所述连续发送包括在完成所述第一页面数据的发送之后连续发送所述第二页面数据,以及
所述连续发送包括基于所述数据输出命令集发送第二页面数据,而不是基于包括标识所述第二平面的第二页面缓冲器的列地址的另一数据输出命令集。
3.如权利要求1所述的方法,其中,
所述数据输出命令集包括标识所述第一平面的第一页面缓冲器的列地址,以及
所述连续发送包括发送存储在所述第一页面缓冲器的多列当中的、由所述列地址标识的第一列到最后一列中的数据。
4.如权利要求1所述的方法,其中,所述连续发送包括基于所述数据输出命令集发送所述第一页面数据的至少一部分以及所述第二页面数据的全部。
5.如权利要求1所述的方法,其中,所述连续发送包括基于所述数据输出命令集在完成第一页面数据的发送之后发送第二页面数据。
6.如权利要求1所述的方法,其中,所述连续发送包括:
基于所述数据输出命令集发送所述第一页面数据,
接收平面改变命令,以及
基于所述平面改变命令发送所述第二平面的第二页面数据。
7.如权利要求6所述的方法,其中,
接收所述数据输出命令集包括在多个写周期期间接收所述数据输出命令集,以及
接收所述平面改变命令包括在一个写周期期间接收所述平面改变命令。
8.如权利要求1所述的方法,其中,所述读取命令集包括所述第一平面的地址、所述第二平面的地址以及指示多平面读取的多平面读取命令。
9.如权利要求8所述的方法,其中,基于读取条件,所述第一平面的地址和所述第二平面的地址分别指示所感测的第一平面的第一页面和第二平面的第二页面。
10.如权利要求1所述的方法,其中,所述接收所述数据输出命令集包括:
接收所述第二平面的地址,以及
在接收到所述第二平面的地址之后接收第一平面的地址。
11.一种操作包括非易失性存储器的存储设备的方法,所述非易失性存储器包括多个平面,所述方法包括:
接收用于数据感测的读取-输出命令集;以及
基于所述读取-输出命令集,
感测对于所述多个平面中的至少两个平面的数据输出,
将存储在所述多个平面的所述至少两个平面中的至少两个页面数据加载到分别连接到所述至少两个平面的至少两个页面缓冲器中,以及
连续输出所述至少两个页面数据。
12.如权利要求11所述的方法,其中,所述读取-输出命令集包括顺序读取命令,所述顺序读取命令指示读取-输出命令集的结束以及从所述至少两个平面感测的所有至少两个页面数据的连续输出。
13.如权利要求12所述的方法,其中,所述顺序读取命令指示在一个写周期期间的输出。
14.如权利要求12所述的方法,其中,所述读取-输出命令集包括所述至少两个平面中的每一个的地址和指示多平面读取的多平面读取命令。
15.如权利要求12所述的方法,其中,所述读取-输出命令集的接收包括,
顺序地接收四个平面的地址序列,以及
接收所述顺序读取命令。
16.一种存储设备,包括:
非易失性存储器,包括存储器单元阵列,所述存储器单元阵列包括多个平面,所述多个平面的各个平面连接到页面缓冲器,其中,所述非易失性存储器被配置为:
同时将存储在所述多个平面的第一平面中的第一页面数据加载到第一平面的第一页面缓冲器中,并将存储在所述多个平面的第二平面中的第二页面数据加载到第二平面的第二页面缓冲器中,其中,所述同时加载基于读取命令集,以及
基于数据输出命令集输出所述第一页面数据和所述第二页面数据;以及
存储器控制器,被配置为:
将所述读取命令集和所述数据输出命令集发送到非易失性存储器,以及
从所述非易失性存储器接收所述第一页面数据和所述第二页面数据,
其中,所述非易失性存储器还被配置为,
从所述存储器控制器接收标识至少两个页面缓冲器的一个页面缓冲器的列地址的第一数据输出命令集,
基于所述第一数据输出命令集输出加载到所述一个页面缓冲器中的第一页面数据,以及
基于所述第一数据输出命令集,而不是标识另一页面缓冲器的列地址的另一数据输出命令集,输出加载到所述另一页面缓冲器中的另一页面数据。
17.如权利要求16所述的存储设备,其中,所述非易失性存储器还被配置为基于所述第一数据输出命令集,而不是在输出所述第一页面数据之后从所述存储器控制器接收命令,来输出所述另一页面数据。
18.如权利要求16所述的存储设备,其中,所述存储器控制器还被配置为在接收到第一页面数据之后将平面改变命令输出到非易失性存储器。
19.如权利要求18所述的存储设备,其中,所述非易失性存储器还被配置为:
接收所述平面改变命令,以及
基于所述平面改变命令输出加载到所述另一页面缓冲区的所述另一页面数据。
20.如权利要求16所述的存储设备,其中,
所述读取命令集标识所述多个平面的平面的地址,以及
所述读取命令集包括指示多平面读取的多平面读取命令。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2018-0137599 | 2018-11-09 | ||
KR1020180137599A KR102675131B1 (ko) | 2018-11-09 | 2018-11-09 | 스토리지 장치 및 스토리지 장치의 동작 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111179994A true CN111179994A (zh) | 2020-05-19 |
Family
ID=68501339
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911035318.2A Pending CN111179994A (zh) | 2018-11-09 | 2019-10-29 | 存储设备和操作该存储设备的方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US11182301B2 (zh) |
EP (1) | EP3654189B1 (zh) |
KR (1) | KR102675131B1 (zh) |
CN (1) | CN111179994A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113778322A (zh) * | 2020-06-09 | 2021-12-10 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN114373495A (zh) * | 2020-10-16 | 2022-04-19 | 爱思开海力士有限公司 | 存储装置及其操作方法 |
US11861212B2 (en) | 2022-02-24 | 2024-01-02 | Silicon Motion, Inc. | Flash memory device, controller, and method capable of performing access operation upon data unit(s) of multiple planes of flash memory device in response one simplified command sequence |
US11935595B2 (en) | 2022-02-24 | 2024-03-19 | Silicon Motion, Inc. | Flash memory device, controller, and method capable of performing access operation upon data unit(s) of multiple planes of flash memory device in response one simplified command sequence |
US11972146B2 (en) | 2022-02-24 | 2024-04-30 | Silicon Motion, Inc. | Flash memory controller and method capable of sending read command or data toggle command to ask for flash memory device return more plane data of different planes |
US11977752B2 (en) | 2022-02-24 | 2024-05-07 | Silicon Motion, Inc. | Flash memory controller and method capable of sending data toggle set-feature signal to enable, disable, or configure data toggle operation of flash memory device |
US11977776B2 (en) | 2022-02-24 | 2024-05-07 | Silicon Motion, Inc. | Flash memory controller and method capable of sending read command or data toggle command to ask for flash memory device return more plane data of different planes |
CN113778322B (zh) * | 2020-06-09 | 2024-09-24 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20220012435A (ko) * | 2020-07-22 | 2022-02-04 | 삼성전자주식회사 | 비휘발성 메모리 장치, 그것의 동작 방법, 그것을 제어하는 제어기, 및 그것을 포함하는 저장 장치 |
US20220043588A1 (en) * | 2020-08-06 | 2022-02-10 | Micron Technology, Inc. | Localized memory traffic control for high-speed memory devices |
TWI798726B (zh) * | 2021-06-18 | 2023-04-11 | 慧榮科技股份有限公司 | 快閃記憶體的資料讀取方法及快閃記憶體控制器與電子裝置 |
US11669451B2 (en) * | 2021-09-01 | 2023-06-06 | Micron Technology, Inc. | Multi-plane switching of non-volatile memory |
US20230266922A1 (en) * | 2022-02-24 | 2023-08-24 | Silicon Motion, Inc. | FLASH MEMORY DEVICE, CONTROLLER, AND METHOD CAPABLE OF PERFORMING ACCESS OPERATION UPON DATA UNIT(s) OF MULTIPLE PLANES OF FLASH MEMORY DEVICE IN RESPONSE ONE SIMPLIFIED COMMAND SEQUENCE |
US20230281121A1 (en) * | 2022-03-01 | 2023-09-07 | International Business Machines Corporation | Increased garbage collection granularity for non-volatile memory |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090000370A (ko) * | 2007-06-28 | 2009-01-07 | 주식회사 하이닉스반도체 | 메모리 소자 및 소거 검증 방법 |
US20140258596A1 (en) * | 2013-03-11 | 2014-09-11 | Kabushiki Kaisha Toshiba | Memory controller and memory system |
KR20170062351A (ko) * | 2015-11-26 | 2017-06-07 | 삼성전자주식회사 | 불휘발성 메모리 장치, 불휘발성 메모리 장치를 포함하는 스토리지 장치 및 불휘발성 메모리 장치에 데이터를 프로그램 하는 프로그램 방법 |
CN107102817A (zh) * | 2016-02-23 | 2017-08-29 | 三星电子株式会社 | 非易失性存储设备 |
CN107153509A (zh) * | 2016-03-02 | 2017-09-12 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
US20180211707A1 (en) * | 2017-01-23 | 2018-07-26 | Toshiba Memory Corporation | Semiconductor memory device and method of controlling semiconductor memory device |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100590388B1 (ko) | 2005-03-10 | 2006-06-19 | 주식회사 하이닉스반도체 | 멀티-플레인 타입 플래쉬 메모리 장치와, 그 프로그램 동작및 리드 동작 제어 방법 |
KR100843218B1 (ko) | 2006-12-18 | 2008-07-02 | 삼성전자주식회사 | 어드레스 쉬프팅을 이용하여 블럭 사이즈를 변경하는플래시 메모리 장치 및 방법 |
JP2010176646A (ja) * | 2009-02-02 | 2010-08-12 | Toshiba Information Systems (Japan) Corp | メモリシステムおよびメモリシステムのインターリーブ制御方法 |
US9324450B2 (en) | 2013-03-13 | 2016-04-26 | Winbond Electronics Corporation | NAND flash memory |
US20160070507A1 (en) | 2014-09-08 | 2016-03-10 | Kabushiki Kaisha Toshiba | Memory system and method of controlling memory device |
US20160299844A1 (en) | 2015-04-08 | 2016-10-13 | Sandisk Enterprise Ip Llc | Mapping Logical Groups of Data to Physical Locations In Memory |
KR102381343B1 (ko) * | 2015-07-27 | 2022-03-31 | 삼성전자주식회사 | 스토리지 장치 및 상기 스토리지 장치의 동작 방법 |
KR20170078307A (ko) | 2015-12-29 | 2017-07-07 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작방법 |
KR20170085923A (ko) * | 2016-01-14 | 2017-07-25 | 삼성전자주식회사 | 이종의 메모리들을 액세스하는 방법 및 이종의 메모리들을 포함하는 메모리 모듈 |
JP6753746B2 (ja) | 2016-09-15 | 2020-09-09 | キオクシア株式会社 | 半導体記憶装置 |
KR20190019721A (ko) * | 2017-08-18 | 2019-02-27 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
KR102658792B1 (ko) * | 2018-09-21 | 2024-04-18 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 비휘발성 메모리 장치의 동작 방법 |
-
2018
- 2018-11-09 KR KR1020180137599A patent/KR102675131B1/ko active IP Right Grant
-
2019
- 2019-08-21 US US16/546,598 patent/US11182301B2/en active Active
- 2019-10-29 CN CN201911035318.2A patent/CN111179994A/zh active Pending
- 2019-11-06 EP EP19207470.6A patent/EP3654189B1/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090000370A (ko) * | 2007-06-28 | 2009-01-07 | 주식회사 하이닉스반도체 | 메모리 소자 및 소거 검증 방법 |
US20140258596A1 (en) * | 2013-03-11 | 2014-09-11 | Kabushiki Kaisha Toshiba | Memory controller and memory system |
KR20170062351A (ko) * | 2015-11-26 | 2017-06-07 | 삼성전자주식회사 | 불휘발성 메모리 장치, 불휘발성 메모리 장치를 포함하는 스토리지 장치 및 불휘발성 메모리 장치에 데이터를 프로그램 하는 프로그램 방법 |
CN107102817A (zh) * | 2016-02-23 | 2017-08-29 | 三星电子株式会社 | 非易失性存储设备 |
CN107153509A (zh) * | 2016-03-02 | 2017-09-12 | 爱思开海力士有限公司 | 数据存储装置及其操作方法 |
US20180211707A1 (en) * | 2017-01-23 | 2018-07-26 | Toshiba Memory Corporation | Semiconductor memory device and method of controlling semiconductor memory device |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113778322A (zh) * | 2020-06-09 | 2021-12-10 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN113778322B (zh) * | 2020-06-09 | 2024-09-24 | 爱思开海力士有限公司 | 存储器系统及其操作方法 |
CN114373495A (zh) * | 2020-10-16 | 2022-04-19 | 爱思开海力士有限公司 | 存储装置及其操作方法 |
US11861212B2 (en) | 2022-02-24 | 2024-01-02 | Silicon Motion, Inc. | Flash memory device, controller, and method capable of performing access operation upon data unit(s) of multiple planes of flash memory device in response one simplified command sequence |
US11935595B2 (en) | 2022-02-24 | 2024-03-19 | Silicon Motion, Inc. | Flash memory device, controller, and method capable of performing access operation upon data unit(s) of multiple planes of flash memory device in response one simplified command sequence |
US11972146B2 (en) | 2022-02-24 | 2024-04-30 | Silicon Motion, Inc. | Flash memory controller and method capable of sending read command or data toggle command to ask for flash memory device return more plane data of different planes |
US11977752B2 (en) | 2022-02-24 | 2024-05-07 | Silicon Motion, Inc. | Flash memory controller and method capable of sending data toggle set-feature signal to enable, disable, or configure data toggle operation of flash memory device |
US11977776B2 (en) | 2022-02-24 | 2024-05-07 | Silicon Motion, Inc. | Flash memory controller and method capable of sending read command or data toggle command to ask for flash memory device return more plane data of different planes |
Also Published As
Publication number | Publication date |
---|---|
KR20200054000A (ko) | 2020-05-19 |
US11182301B2 (en) | 2021-11-23 |
EP3654189B1 (en) | 2023-02-15 |
KR102675131B1 (ko) | 2024-06-13 |
EP3654189A1 (en) | 2020-05-20 |
US20200151106A1 (en) | 2020-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3654189B1 (en) | Storage device and method of operating the storage device | |
TWI607310B (zh) | 多層資料排序 | |
US20160011779A1 (en) | Nonvolatile memory device, memory controller, and operating method of the same | |
CN110111832B (zh) | 半导体存储器装置及其操作方法 | |
US10061695B2 (en) | Memory system and operating method thereof | |
US10296233B2 (en) | Method of managing message transmission flow and storage device using the method | |
KR20110116865A (ko) | 메모리 시스템 및 그것의 동작 방법 | |
KR20110099883A (ko) | 홀수의 매트들을 갖는 비휘발성 메모리 장치, 그것을 포함하는 메모리 시스템 및 그것의 배속 동작 방법 | |
US20210286721A1 (en) | Controller and operating method thereof | |
KR20100133707A (ko) | 비휘발성 메모리 장치 및 그것의 최상위 비트 프로그램 상태 판별 방법 | |
CN113253912A (zh) | 存储器系统及其操作方法 | |
US9478289B1 (en) | Semiconductor memory device and operating method thereof | |
KR20190111608A (ko) | 반도체 메모리 장치 및 그 동작 방법 | |
KR20210157544A (ko) | 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법 | |
US12001709B2 (en) | Storage devices and operating methods of storage controllers | |
US20220083253A1 (en) | Semiconductor memory device, controller, and memory system having semiconductor memory device and controller | |
KR20190102588A (ko) | 반도체 메모리 장치 및 그 동작 방법 | |
US11182108B2 (en) | Memory system, memory controller, and operation method | |
US11145338B2 (en) | Semiconductor memory device and method of operating the same | |
CN111145804B (zh) | 解码电路及具有该解码电路的半导体存储器装置 | |
US20240274201A1 (en) | Storage device for determining memory cell type after data input during program operation and operating method thereof | |
US20240152451A1 (en) | Storage device translating logical address on the basis of sequentiality of namespace, and method thereof | |
KR20230086446A (ko) | 저장 장치, 호스트 장치 및 그들의 동작 방법 | |
CN115934406A (zh) | 从多个内核输出测试数据的系统及其方法 | |
KR20220052157A (ko) | 반도체 메모리 장치 및 그 동작 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |