存储系统和存储系统的操作方法与流程

文档序号:12063592阅读:214来源:国知局
存储系统和存储系统的操作方法与流程

本申请要求2015年11月13日提交的第10-2015-0159587号的韩国专利申请的优先权,其通过引用整体合并于此。

技术领域

本发明的示例性实施例总体地涉及一种存储系统,更具体地,涉及一种用于处理数据到存储器件中的存储系统和存储系统的操作方法。



背景技术:

计算机环境范式已经变为能够随时随地使用的普适计算系统,导致便携式电子设备的使用快速增加,诸如,移动电话、数字照相机和笔记本电脑已经快速增加。便携式电子设备通常使用具有用于储存数据的存储器件(即数据储存设备)的存储系统。数据储存设备用作便携式电子设备的主存储设备或辅助存储设备。

由于使用存储器件的数据储存设备不具有移动部件,因此它们提供优异的稳定性、耐久性、高信息访问速度和低功耗。具有这些优点的数据储存设备的示例包括通用串行总线(USB)存储器件、具有各种接口的存储卡和固态驱动器(SSD)等。



技术实现要素:

各种实施例针对一种存储系统和存储系统的操作方法,该存储系统能够最小化存储器件的复杂性和存储器件的性能下降、最大化存储器件的利用效率以及快速且稳定地处理数据。

在一个实施例中,一种存储系统可以包括:存储器件,存储器件包括多个存储块,所述多个存储块中的每个包括多个页,所述多个页具有耦接到多个字线的多个存储单元,存储器件适用于将由主机请求的读取数据和写入数据储存在所述多个页中;以及控制器,适用于将包括在存储块中的所述多个页分组,将每个存储块划分为多个子存储块,将与从主机接收到的写入命令相对应的数据编程到存储块的第一存储块中,响应于来自主机的针对编程到第一存储块中的数据的写入命令来对编程到存储块的第一存储块中的数据执行更新编程,以及根据更新编程来储存针对第一存储块中包括的子存储块的映射列表。

映射列表可以包括:多个列,每个列对应于相应的存储块;以及多个位区域,包括在存储块的列中,每个位区域对应于存储块的相应的子存储块。

控制器可以根据更新编程来将与第一存储块的第一子存储块相关的有效页计数(VPC)信息储存在位区域中,位区域与第一子存储块相对应且包括在映射列表的与第一存储块相对应的第一列中。

第一存储块可以是封闭存储块,封闭存储块的所有页已经经历数据编程操作。

控制器可以:将映射列表储存在控制器的存储器中;将映射列表的与封闭存储块相对应的位区域中储存的VPC信息储存在存储块中;以及将与封闭存储块相关的映射信息储存在存储块中。

控制器可以通过针对封闭存储块将储存在映射列表中的VPC信息与储存在存储块中的VPC信息进行比较,来识别封闭存储块的子存储块中包括的有效页。

如果作为比较的结果,VPC信息被确定为改变,则控制器可以搜索和检查与第二子存储块相关的映射信息,第二子存储块对应于映射列表的位区域之中的储存改变的VPC信息的位区域。

控制器可以经由对映射信息的搜索和检查来识别第二子存储块中包括的有效页,以及更新与第二子存储块相关的映射信息。

如果作为比较的结果,VPC信息被确定为未改变,则控制器可以基于VPC信息来识别子存储块中包括的有效页。

控制器可以通过对其有效页已经被识别的封闭存储块执行垃圾收集(GC)来产生空存储块、开放存储块或空闲存储块。

在一个实施例中,一种存储系统的操作方法可以包括:通过将包括在存储器件的多个存储块中的每个存储块中的且具有耦接到多个字线的多个存储单元的多个页分组,来将所述多个存储块中的每个存储块划分为多个子存储块;从主机接收针对存储块的第一存储块的写入命令;将与从主机接收到的写入命令相对应的数据编程到第一存储块中;从主机接收针对编程到第一存储块中的数据的写入命令;以及对编程到存储块的第一存储块中的数据执行更新编程,以及根据更新编程来储存针对第一存储块中包括的子存储块的映射列表。

映射列表可以包括:多个列,每个列对应于相应的存储块,以及多个位区域,多个位区域包括在存储块的列中,多个位区域的每个对应于存储块的相应的子存储块。

储存映射列表可以包括:根据更新编程,将与第一存储块的第一子存储块相关的有效页计数(VPC)信息储存在位区域中,位区域与第一子存储块相对应且包括在映射列表的与第一存储块相对应的第一列中。

第一存储块可以包括封闭存储块,封闭存储块包括已经执行了数据编程操作的所有页。

储存映射列表可以包括:将映射列表储存在控制器的存储器中;将储存在映射列表的列中包括的且与封闭存储块相对应的位区域中的VPC信息以及与封闭存储块相关的映射信息储存在存储块中。

操作方法还可以包括:通过针对封闭存储块将储存在映射列表中的VPC信息与储存在存储块中的VPC信息进行比较,来识别封闭存储块的子存储块中包括的有效页。

如果作为比较的结果,VPC信息被确定为改变,则识别有效页可以包括:搜索和检查与第二子存储块相关的映射信息,第二子存储块对应于映射列表的位区域之中的储存改变的VPC信息的位区域。

操作方法还可以包括:经由对映射信息的搜索和检查来识别第二子存储块中包括的有效页,以及更新与第二子存储块相关的映射信息。

如果作为比较的结果,VPC信息被确定为未改变,则识别有效页可以包括:基于VPC信息来识别子存储块中包括的有效页。

操作方法还可以包括:通过对其有效页已经被识别的封闭存储块执行垃圾收集(GC)来产生空存储块、开放存储块或空闲存储块。

附图说明

图1是图示根据本发明的实施例的包括存储系统的数据处理系统的示图。

图2是图示根据本发明的实施例的包括多个存储块的存储器件的示图。

图3是图示根据本发明的实施例的存储器件的存储块的电路图。

图4至图11是示意性图示根据本发明的各个实施例的存储器件的示图。

图12至图14是图示根据本发明的实施例的数据处理操作的示图。

图15是根据本发明的实施例的处理数据的操作的流程图。

具体实施方式

以下将参照附图来更详细地描述本发明的各种实施例。然而,本发明可以以不同的形式来实施而不应当被解释为局限于本文所阐述的实施例。更确切地说,这些实施例被提供使得本公开将是彻底和完整的。贯穿本公开,相同的附图标记在本发明的各种附图和实施例中指代相同的部分。还要注意的是,在本说明书中,“连接/耦接”是指一个部件不仅直接耦接另一个部件,而且也可经由中间部件间接耦接另一个部件。此外,只要在句子中未明确提及,单数形式可以包括复数形式。应当容易理解,本公开中的“上”和“之上”的意义应当采用最广义的方式来解释,使得“上”不仅意味着“直接在……上”而且意味着在其之间具有中间特征或层的某物“上”,且“之上”不仅意味着直接在顶部上而且意味着在其之间具有中间特征或层的某物的顶部上。当第一层被称为在第二层“上”或在衬底“上”时,它不仅涉及第一层直接形成在第二层或衬底上的情况,而且涉及在第一层与第二层或衬底之间存在第三层的情况。

现在参照图1,根据本发明的实施例,数据处理系统100可以包括主机102和存储系统110。

主机102可以包括例如,诸如移动电话、MP3播放器和膝上型计算机的便携式电子设备或诸如台式计算机、游戏机、TV和投影仪等的非便携式电子设备。

存储系统110可以响应于来自主机102的请求来储存主机102要访问的数据。例如,存储系统110可以用作主机102的主存储系统或辅助存储系统。存储系统110可以根据主机接口的协议而实施为与主机102电耦接。存储系统110可以用诸如固态驱动器(SSD)、多媒体卡(MMC)、嵌入式MMC(eMMC)、缩小尺寸MMC(RS-MMC)和微型MMC、安全数字(SD)卡、迷你SD和微型SD、通用串行总线(USB)储存设备、通用快闪储存(UFS)设备、紧凑型闪存(CF)卡、智能媒体(SM)卡和记忆棒等的各种类型的储存设备中的任意一种来实施。

用于存储系统110的储存设备可以用易失性存储器件(诸如动态随机存取存储器(DRAM)和静态随机存取存储器(SRAM)等)来实施。替换地,用于存储系统110的储存设备可以用非易失性存储器件(诸如只读存储器(ROM)、掩模ROM(MROM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、铁电随机存取存储器(FRAM)、相变RAM(PRAM)、磁阻RAM(MRAM)和电阻式RAM(RRAM)等)来实施。

存储系统110可以包括用于储存数据的存储器件150以及用于控制存储器件150中的数据储存的控制器130。存储器件150中的储存数据可以由主机102来访问。

控制器130和存储器件150可以被集成至半导体器件中。例如,控制器130和存储器件150可以被集成至被配置成固态驱动器(SSD)的半导体器件中。当存储系统110用作SSD时,可以实质地提高与存储系统110电耦接的主机102的操作速度。

控制器130和存储器件150可以被集成至被配置成诸如个人计算机存储卡国际协会(PCMCIA)卡、紧凑型闪存(CF)卡、智能媒体(SM)卡(SMC)、记忆棒、多媒体卡(MMC)、RS-MMC和微型MMC、安全数字(SD)卡、迷你SD、微型SD和SDHC以及通用快闪储存(UFS)设备等的存储卡的半导体器件中。

再例如,存储系统110可以配置计算机、超移动PC(UMPC)、工作站、上网本、个人数字助理(PDA)、便携式计算机、网络平板、平板电脑、无线电话、移动电话、智能电话、电子书、便携式多媒体播放器(PMP)、便携式游戏机、导航仪、黑匣子、数字照相机、数字多媒体广播(DMB)播放器、三维(3D)电视、智能电视、数字录音机、数字音频播放器、数字图片记录器、数字图片播放器、数字录像机、数字视频播放器、配置数据中心的储存器、能够在无线环境下收发信息的设备、配置家庭网络的各种电子设备中的一种、配置计算机网络的各种电子设备中的一种、配置远程信息处理网络的各种电子设备中的一种、RFID设备、配置计算系统的各种组成元件中的一种等。

存储器件150可以是即使在电源中断或关断时仍能保留储存的数据的非易失性存储器件(诸如,例如,快闪存储器)。在写入操作期间,存储器件150可以储存从主机102提供的数据。在读取操作期间,存储器件150可以提供储存的数据到主机102。可以采用一个或更多个存储器件150。一个或更多个存储器件150可以实质相同。一个或更多个存储器件可以是不同类型的存储器件的组合。

存储器件150可以包括多个存储块,例如,存储块152、154和156。存储块152、154和156中的每个可以包括多个页。每个页可以包括电耦接到多个字线(WL)的多个存储单元。存储器件150可以具有三维(3D)层叠结构,其中,存储器件的各个部件布置在多层。在一个实施例中,存储器件150可以是具有3D层叠结构的快闪存储器。稍后将参照图2至图11详细描述包括3D层叠结构的存储器件150的示例。

控制器130可以控制存储器件150的整体操作,诸如,例如,读取操作、写入操作、编程操作和/或擦除操作。一般地,控制器130可以响应于来自主机102的请求来控制存储器件150。例如,控制器130可以响应于来自主机102的读取请求来将从存储器件150读取的数据提供到主机102。或者,也作为一个示例,控制器可以响应于写入请求来将从主机102提供的数据储存到存储器件150中。

在一个实施例中,控制器130可以包括主机接口单元132、处理器134、错误校正码(ECC)单元138、电源管理单元(PMU)140、NAND闪存控制器(NFC)142和存储器144。

主机接口单元132可以处理从主机102提供的命令和数据。主机接口单元132可以经由诸如通用串行总线(USB)、多媒体卡(MMC)、外围组件互连快速(PCI-E)、串行附接SCSI(SAS)、串行高级技术附件(SATA)、并行高级技术附件(PATA)、小型计算机系统接口(SCSI)、增强型小盘接口(ESDI)和集成驱动电路(IDE)等的各种接口协议中的至少一种来与主机102通信。根据需要,主机接口单元132可以包括适用于与主机102以及控制器100的其它部件通信的任何合适的电路、系统或器件。

ECC单元138可以在读取操作期间检测并校正从存储器件150读取的数据中的错误。在一个实施例中,如果ECC单元138检测到的错误位的数量大于或等于可校正错误位的阈值数量时,则ECC单元138不会校正错误位,并且输出指示校正错误位失败的错误校正失败信号。

ECC单元138可以基于任何合适的错误校正方案来执行错误校正操作。例如,ECC单元138可以基于诸如低密度奇偶校验(LDPC)码、博斯-乔赫里-霍克文黑姆(BCH,Bose-Chaudhuri-Hocquenghem)码、涡轮码(turbo code)、里德-所罗门(RS,Reed-Solomon)码、卷积码、递归系统码(RSC)、格形编码调制(TCM)和块编码调制(BCM)等的编码调制方案来执行错误校正操作。ECC单元138可以包括用于错误校正操作的任何合适的电路、系统或设备。

PMU 140可以提供和管理用于控制器130的电源。根据需要,PMU 140可以提供和管理电源,例如,用于控制器130的各个部件的电源。PMU 140在需要时可以提供不同的电压电源到控制器的各个部件。PMU 140可以提供相同的电压电源到控制器的各个部件。

NFC 142可以用作控制器130与存储器件150之间的存储器接口,以允许控制器130响应于来自主机102的请求来控制存储器件150。例如,当存储器件150是快闪存储器特别是NAND快闪存储器时,NFC 142可以产生用于存储器件150的控制信号以及在处理器134的控制下处理数据。

存储器144可以用作存储系统110和控制器130的工作存储器,并且储存用于驱动存储系统110和控制器130的数据。例如,当控制器130控制存储器件150的操作时,存储器144可以储存由控制器130和存储器件150使用的数据以用于诸如读取操作、写入操作、编程操作和擦除操作的操作。

存储器144可以是或可以包括易失性存储器。例如,存储器144可以是或可以包括静态随机存取存储器(SRAM)或动态随机存取存储器(DRAM)。如上所述,存储器144可以储存由主机102和存储器件150使用的数据以用于读取操作和/或写入操作。存储器144可以是或可以包括程序存储器、数据存储器、写入缓冲器、读取缓冲器和映射缓冲器等。

处理器134可以控制存储系统110的常规操作。处理器134可以响应于来自主机102的写入请求或读取请求来控制针对存储器件150的写入操作或读取操作。处理器134可以驱动还被称为闪存转换层(FTL)的固件来控制存储系统110的常规操作。处理器134可以利用微处理器、中央处理单元(CPU)等来实施。

管理单元(未示出)可以被包括在处理器134中,以用于执行存储器件150的坏块管理。例如,管理单元可以找到包括在存储器件150中的坏存储块(即,不满足进一步使用的条件的存储块)并且对该坏存储块执行坏块管理。当采用快闪存储器(例如,NAND快闪存储器)作为存储器件150时,在写入操作期间(例如,在编程操作期间),可能因NAND逻辑功能的固有特性而发生编程失败。在坏块管理期间,编程失败的存储块或坏存储块的数据可以被编程至新存储块中。此外,因编程失败导致的坏块会严重地降低具有3D层叠结构的存储器件150的利用效率以及存储系统100的可靠性,从而需要可靠的坏块管理。

参照图2,存储器件150可以包括多个存储块,例如,第零存储块210至第(N-1)存储块240,其中N为正整数。多个存储块210至240中的每个可以包括多个页,例如,2M个页(2MPAGES),其中M为正整数。多个页中的每个可以包括多个存储单元,多个字线可以电耦接至所述多个存储单元。要注意,可以采用任何数量的合适的块和每块任何数量合适的页。

根据在每个存储单元中可以储存或表示的位的数量,存储块可以是单电平单元(SLC)存储块和/或多电平单元(MLC)存储块。SLC存储块可以包括用每个存储单元能够储存1位数据的存储单元来实施的多个页。MLC存储块可以包括利用每个存储单元能够储存多位数据(例如,两位或更多位数据)的存储单元来实施的多个页。包括用每个存储单元能够储存3位数据的存储单元来实施的多个页的MLC存储块也可以被称为三电平单元(TLC)存储块。

多个存储块210至240中的每个可以在写入操作期间储存从主机设备102提供的数据,以及可以在读取操作期间将储存的数据提供给主机102。

图3是图示根据本发明的实施例的多个存储块152至156中的一个存储块的电路图。

参照图3,存储器件150的存储块152可以包括分别电耦接至位线BL0至BLm-1的多个单元串340。每个单元串340可以包括至少一个漏极选择晶体管DST和至少一个源极选择晶体管SST。多个存储单元或多个存储单元晶体管MC0至MCn-1可以串联地电耦接在选择晶体管DST与SST之间。各个存储单元MC0至MCn-1可以由多电平单元(MLC)组成,多电平单元(MLC)中的每个储存多位的数据信息。存储单元可以具有任何合适的结构。

在图3中,“DSL”表示漏极选择线,“SSL”表示源极选择线,以及“CSL”表示公共源极线。

图3作为示例示出由NAND快闪存储单元配置的存储块152。但是要注意的是,根据实施例的存储器件150的存储块152不限于NAND快闪存储器且可以由NOR快闪存储器、在其中组合了至少两种类型的存储单元的混合快闪存储器、或控制器被构建在存储芯片中的一体NAND快闪存储器(one-NAND flash memory)来实现。半导体器件的操作特性不仅可以应用至在其中电荷储存层由导电浮栅配置的快闪存储器件,还可以应用至在其中电荷储存层由电介质层配置的电荷俘获闪存(CTF)。

还要注意,存储器件150不仅仅限于快闪存储器件。例如,存储器件150可以是DRAM或SRAM器件。

存储器件150的电压发生器310可以产生根据操作模式而供应至各个字线的字线电压(例如,编程电压、读取电压和通过电压)。另外,电压发生器310可以产生要被供应至块体(bulk)(例如,在其中形成存储单元的阱区)的电压。电压发生器310可以在控制电路(未示出)的控制下执行电压发生操作。电压发生器310可以产生多个可变读取电压,以产生多个读取数据。电压发生器310可以在控制电压的控制下,选择存储单元阵列的存储块或扇区中的一个,选择选中存储块的字线中的一个,以及将字线电压提供至选中字线和未选中字线。

存储器件150的读/写电路320可以由控制电路控制,以及可以根据操作模式而用作感测放大器或写入驱动器。在验证/正常读取操作期间,读/写电路320可以用作用于从存储单元阵列读取数据的感测放大器。此外,在编程操作期间,读/写电路320可以用作用于根据要被储存在存储单元阵列中的数据来驱动位线的写入驱动器。读/写电路320可以在编程操作期间从缓冲器(未示出)接收要被写入在存储单元阵列中的数据,以及可以根据输入的数据来驱动位线。为此,读/写电路320可以包括分别与列(或位线)或列对(或位线对)相对应的多个页缓冲器322、324和326。页缓冲器322、324和326中的每个可以包括多个锁存器(未示出)。

图4是图示根据本发明的一个实施例的存储器件150的多个存储块152至156的示例的框图。

参照图4,存储器件150可以包括多个存储块BLK0至BLKN-1。存储块BLK0至BLKN-1中的每个可以实现为3D结构或垂直结构。各个存储块BLK0至BLKN-1可以包括沿第一方向至第三方向(例如,x轴方向、y轴方向和z轴方向)延伸的多个结构。

各个存储块BLK0至BLKN-1可以包括沿第二方向延伸的多个NAND串NS。多个NAND串NS可以沿第一方向和第三方向设置。每个NAND串NS可以电耦接至位线BL、至少一个源极选择线SSL、至少一个接地选择线GSL、多个字线WL、至少一个虚设字线DWL和公共源极线CSL。例如,各个存储块BLK0至BLKN-1可以电耦接至多个位线BL、多个源极选择线SSL、多个接地选择线GSL、多个字线WL、多个虚设字线DWL和多个公共源极线CSL。

图5是图4中所示的多个存储块BLK0至BLKN-1中的一个存储块BLKi的透视图。图6是沿图5中所示的存储块BLKi的线I-I′截取的剖视图。

参照图5和图6,存储器件150的多个存储块之中的存储块BLKi可以包括沿第一方向至第三方向延伸的结构。

可以设置有衬底5111。衬底5111可以包括用第一类型杂质掺杂的硅材料。衬底5111可以包括用p型杂质掺杂的硅材料。衬底5111可以是p型阱(例如,口袋型p阱)。衬底5111还可以包括围绕p型阱的n型阱。虽然在本发明的实施例中,衬底5111被例示为p型硅,但是要注意的是,衬底5111不局限于p型硅。

沿第一方向延伸的多个掺杂区5311至5314可以设置在衬底5111之上。多个掺杂区5311至5314可以包括与衬底5111的杂质不同的第二类型杂质。多个掺杂区5311至5314可以用n型杂质掺杂。虽然,在本发明的实施例中,第一掺杂区5311至第四掺杂区5314被例示为n型,但是要注意的是,它们不局限于n型。

在第一掺杂区5311与第二掺杂区5312之间的衬底5111之上的区域中,沿第一方向延伸的多个电介质材料5112可以沿第二方向顺序地设置。电介质材料5112与衬底5111可以沿第二方向分开预设距离。电介质材料5112中的每个可以沿第二方向彼此分开预设距离。电介质材料5112可以包括诸如氧化硅的电介质材料。

在第一掺杂区5311与第二掺杂区5312之间的衬底5111之上的区域中,可以设置多个柱体5113,多个柱体5113沿第一方向顺序地布置并且沿第二方向穿过电介质材料5112。多个柱体5113可以分别穿过电介质材料5112并且可以与衬底5111电耦接。每个柱体5113可以由多种材料配置。每个柱体5113的表面层5114可以包括用第一类型杂质掺杂的硅材料。每个柱体5113的表面层5114可以包括用与衬底5111相同类型的杂质掺杂的硅材料。虽然,在本发明的实施例中,每个柱体5113的表面层5114被例示为包括p型硅,但是每个柱体5113的表面层5114不局限于p型硅。

每个柱体5113的内层5115可以由电介质材料形成。每个柱体5113的内层5115可以由诸如氧化硅的电介质材料填充。

在第一掺杂区5311与第二掺杂区5312之间的区域中,电介质层5116可以沿电介质材料5112、柱体5113和衬底5111的暴露表面设置。电介质层5116的厚度可以小于电介质材料5112之间的距离的一半。换言之,除电介质材料5112和电介质层5116之外的材料的区域可以被设置在(i)设置在电介质材料5112的第一电介质材料的底表面之下的电介质层5116与(ii)设置在电介质材料5112的第二电介质材料的顶表面之上的电介质层5116之间。电介质材料5112可以位于第一电介质材料之下。

在第一掺杂区5311与第二掺杂区5312之间的区域中,导电材料5211至5291可以设置在电介质层5116的暴露表面之上。沿第一方向延伸的导电材料5211可以设置在邻近于衬底5111的电介质材料5112与衬底5111之间。具体地,沿第一方向延伸的导电材料5211可以设置在(i)布置在衬底5111之上的电介质层5116与(ii)布置在邻近于衬底5111的电介质材料5112的底表面之下的电介质层5116之间。

沿第一方向延伸的导电材料可以设置在(i)布置在电介质材料5112的一个电介质材料的顶表面之上的电介质层5116与(ii)布置在电介质材料5112的另一电介质材料(其布置在一个电介质材料5112之上)的底表面之下的电介质层5116之间。沿第一方向延伸的导电材料5221至5281可以设置在电介质材料5112之间。沿第一方向延伸的顶部导电材料5291可以设置在最上电介质材料5112之上。沿第一方向延伸的导电材料5211至5291可以由金属材料形成。沿第一方向延伸的导电材料5211至5291可以由诸如多晶硅的导电材料形成。

在第二掺杂区5312与第三掺杂区5313之间的区域中,可以设置与第一掺杂区5311和第二掺杂区5312之间的结构相同的结构。例如,在第二掺杂区5312与第三掺杂区5313之间的区域中,可以设置沿第一方向延伸的多个电介质材料5112、沿第一方向顺序地布置且沿第二方向穿过多个电介质材料5112的多个柱体5113、设置在多个电介质材料5112和多个柱体5113的暴露表面之上的电介质层5116以及沿第一方向延伸的多个导电材料5212至5292。

在第三掺杂区5313与第四掺杂区5314之间的区域中,可以设置与第一掺杂区5311和第二掺杂区5312之间的结构相同的结构。例如,在第三掺杂区5313与第四掺杂区5314之间的区域中,可以设置沿第一方向延伸的多个电介质材料5112、沿第一方向顺序地布置且沿第二方向穿过多个电介质材料5112的多个柱体5113、设置在多个电介质材料5112和多个柱体5113的暴露表面之上的电介质层5116以及沿第一方向延伸的多个导电材料5213至5293。

漏极5320可以分别设置在多个柱体5113之上。漏极5320可以由用第二类型杂质掺杂的硅材料形成。漏极5320可以由用n型杂质掺杂的硅材料形成。虽然为了方便说明起见,漏极5320被例示为包括n型硅,但是要注意的是,漏极5320不局限于是n型硅。例如,每个漏极5320的宽度可以大于每个对应柱体5113的宽度。每个漏极5320可以以焊盘的形状设置在每个对应柱体5113的顶表面之上。

沿第三方向延伸的导电材料5331至5333可以设置在漏极5320之上。导电材料5331至5333中的每个可以延伸地设置在漏极5320之上,漏极5320以第一方向上彼此预设的分隔距离来串联布置在第三方向上。各个导电材料5331至5333可以与下方的漏极5320电耦接。漏极5320与沿第三方向延伸的导电材料5331至5333可以通过接触插塞电耦接。沿第三方向延伸的导电材料5331至5333可以由金属性材料形成。沿第三方向延伸的导电材料5331至5333可以由诸如多晶硅的导电材料形成。

在图5和图6中,相应的柱体5113可以与电介质层5116以及沿第一方向延伸的导电材料5211至5291、5212至5292和5213至5293一起形成串。相应的柱体5113可以与电介质层5116以及沿第一方向延伸的导电材料5211至5291、5212至5292和5213至5293一起形成NAND串NS。每个NAND串NS可以包括多个晶体管结构TS。

现在参照图7,在图6中所示的晶体管结构TS中,电介质层5116可以包括第一子电介质层至第三子电介质层5117、5118和5119。

每个柱体5113中的p型硅的表面层5114可以用作本体。邻近于柱体5113的第一子电介质层5117可以用作隧道电介质层,并且可以包括热氧化层。

第二子电介质层5118可以用作电荷储存层。第二子电介质层5118可以用作电荷捕获层,并且可以包括氮化物层或者诸如氧化铝层或氧化铪层等的金属氧化物层。

邻近于导电材料5233的第三子电介质层5119可以用作阻挡电介质层。邻近于沿第一方向延伸的导电材料5233的第三子电介质层5119可以形成为单层或多层。第三子电介质层5119可以是诸如氧化铝层或氧化铪层等的高-k电介质层,其具有比第一子电介质层5117和第二子电介质层5118大的介电常数。

导电材料5233可以用作栅极或控制栅极。例如,栅极或控制栅极5233、阻挡电介质层5119、电荷储存层5118、隧道电介质层5117和本体5114可以形成晶体管或存储单元晶体管结构。例如,第一子电介质层5117至第三子电介质层5119可以形成氧化物-氮化物-氧化物(ONO)结构。在实施例中,为了方便解释起见,每个柱体5113中的p型硅的表面层5114将被称为沿第二方向的本体。

存储块BLKi可以包括多个柱体5113。例如,存储块BLKi可以包括多个NAND串NS。具体地,存储块BLKi可以包括沿第二方向或垂直于衬底5111的方向延伸的多个NAND串NS。

每个NAND串NS可以包括沿第二方向布置的多个晶体管结构TS。每个NAND串NS的多个晶体管结构TS中的至少一个晶体管结构可以用作源极选择晶体管SST。每个NAND串NS的多个晶体管结构TS中的至少一个晶体管结构可以用作接地选择晶体管GST。

栅极或控制栅极可以对应于沿第一方向延伸的导电材料5211至5291、5212至5292和5213至5293。例如,栅极或控制栅极可以沿第一方向延伸并且形成字线和至少两个选择线(包括至少一个源极选择线SSL和至少一个接地选择线GSL)。

沿第三方向延伸的导电材料5331至5333可以电耦接至NAND串NS的一端。沿第三方向延伸的导电材料5331至5333可以用作位线BL。例如,在一个存储块BLKi中,多个NAND串NS可以电耦接至一个位线BL。

沿第一方向延伸的第二类型掺杂区5311至5314可以被设置至NAND串NS的另一端。沿第一方向延伸的第二类型掺杂区5311至5314可以用作公共源极线CSL。

例如,存储块BLKi可以包括沿垂直于衬底5111的方向(例如,第二方向)延伸的多个NAND串NS,并且可以用作在其中多个NAND串NS电耦接至一个位线BL的NAND快闪存储块(例如,电荷捕获型存储器的NAND快闪存储块)。

虽然图5至图7示出沿第一方向延伸的导电材料5211至5291、5212至5292和5213至5293被设置成9层,但是要注意的是,沿第一方向延伸的导电材料5211至5291、5212至5292和5213至5293不局限于此。例如,沿第一方向延伸的导电材料可以设置成8层、16层或任意多层。例如,在一个NAND串NS中,晶体管的数量可以是8、16或更多。

虽然图5至图7图示3个NAND串NS电耦接至一个位线BL,但是要注意的是,实施例不局限于此。在存储块BLKi中,m个NAND串NS可以电耦接至一个位线BL,m是正整数。沿第一方向延伸的导电材料5211至5291、5212至5292和5213至5293的数量以及公共源极线5311至5314的数量可以随电耦接至一个位线BL的NAND串NS的数量而变化。

此外,虽然在图5至图7中图示3个NAND串NS电耦接至沿第一方向延伸的一个导电材料,但是要注意的是,实施例不局限于此。例如,n个NAND串NS可以电耦接至沿第一方向延伸的一个导电材料,n是正整数。位线5331至5333的数量可以随着电耦接到沿第一方向延伸的一个导电材料的NAND串NS的数量而变化。

参照图8,在具有第一结构的块BLKi中,NAND串NS11至NS31可以设置在第一位线BL1与公共源极线CSL之间。第一位线BL1可以对应于图5和图6的沿第三方向延伸的导电材料5331。NAND串NS12至NS32可以设置在第二位线BL2与公共源极线CSL之间。第二位线BL2可以对应于图5和图6的沿第三方向延伸的导电材料5332。NAND串NS13至NS33可以设置在第三位线BL3与公共源极线CSL之间。第三位线BL3可以对应于图5和图6的沿第三方向延伸的导电材料5333。

每个NAND串NS的源极选择晶体管SST可以电耦接至对应的位线BL。每个NAND串NS的接地选择晶体管GST可以电耦接至公共源极线CSL。存储单元MC1至MC6可以设置在每个NAND串NS的源极选择晶体管SST与接地选择晶体管GST之间。

在该示例中,NAND串NS可以以行和列为单位来定义。电耦接至一个位线的NAND串NS可以形成一列。电耦接至第一位线BL1的NAND串NS11至NS31可以对应于第一列。电耦接至第二位线BL2的NAND串NS12至NS32可以对应于第二列。电耦接至第三位线BL3的NAND串NS13至NS33可以对应于第三列。电耦接至一个源极选择线SSL的NAND串NS可以形成一行。电耦接至第一源极选择线SSL1的NAND串NS11至NS13可以形成第一行。电耦接至第二源极选择线SSL2的NAND串NS21至NS23可以形成第二行。电耦接至第三源极选择线SSL3的NAND串NS31至NS33可以形成第三行。

在每个NAND串NS中,可以定义高度。在每个NAND串NS中,邻近于接地选择晶体管GST的存储单元MC1的高度可以具有例如值“1”。在每个NAND串NS中,当从衬底5111测量时,存储单元的高度可以随存储单元靠近源极选择晶体管SST而增大。在每个NAND串NS中,邻近于源极选择晶体管SST的存储单元MC6的高度可以具有例如值“7”。

布置在同一行中的NAND串NS的源极选择晶体管SST可以共享源极选择线SSL。布置在不同行中的NAND串NS的源极选择晶体管SST可以分别电耦接至不同的源极选择线SSL1、SSL2和SSL3。

在同一行中的NAND串NS中的同一高度处的存储单元可以共享字线WL。例如,在同一高度处,电耦接至不同行中的NAND串NS的存储单元MC的字线WL可以彼此电耦接。在同一行的NAND串NS中的同一高度处的虚设存储单元DMC可以共享虚设字线DWL。例如,在同一高度或同一水平处,电耦接至不同行中的NAND串NS的虚设存储单元DMC的虚设字线DWL可以彼此电耦接。

对于在其中可以设置有沿第一方向延伸的导电材料5211至5291、5212至5292和5213至5293的每个层,位于同一水平或同一高度或同一层处的字线WL或虚设字线DWL可以彼此电耦接。沿第一方向延伸的导电材料5211至5291、5212至5292和5213至5293可以通过接触共同地电耦接至上层。换言之,在同一行中的NAND串NS的接地选择晶体管GST可以共享接地选择线GSL。此外,在不同行中的NAND串NS的接地选择晶体管GST可以共享接地选择线GSL。例如,NAND串NS11至NS13、NS21至NS23和NS31至NS33可以共同电耦接至接地选择线GSL。

公共源极线CSL可以共同电耦接至NAND串NS。在衬底5111之上的有源区之上,第一掺杂区5311至第四掺杂区5314可以电耦接。第一掺杂区5311至第四掺杂区5314可以通过接触共同电耦接至上层。

例如,如图8中所示,同一高度或同一水平处的字线WL可以彼此电耦接。因此,当特定高度处的字线WL被选中时,电耦接至选中的字线WL的所有NAND串NS可以被选中。在不同行中的NAND串NS可以电耦接至不同的源极选择线SSL。因此,在电耦接至同一字线WL的NAND串NS之中,通过选择源极选择线SSL1至SSL3中的一个,在未选中行中的NAND串NS可以与位线BL1至BL3电隔离。换句话说,通过选择源极选择线SSL1至SSL3中的一个,可以选择布置在与选中的源极线相同的行中的NAND串NS。此外,通过选择位线BL1至BL3中的一个,可以选择布置在与选中的位线相同的列中的NAND串NS。因此,可以仅仅选择布置在与选中的源极线相同的行中和与选中的位线相同的列中的NAND串NS。

在每个NAND串NS中,可以设置虚设存储单元DMC。在图8中,例如,在每个NAND串NS中,虚设存储单元DMC可以设置在第三存储单元MC3与第四存储单元MC4之间。例如,第一存储单元MC1至第三存储单元MC3可以设置在虚设存储单元DMC与接地选择晶体管GST之间。第四存储单元MC4至第六存储单元MC6可以设置在虚设存储单元DMC与源极选择晶体管SST之间。每个NAND串NS的存储单元MC可以通过虚设存储单元DMC划分为两个存储单元组。在划分的存储单元组中,邻近于接地选择晶体管GST的存储单元(例如,MC1至MC3)可以被称为下存储单元组,而邻近于源极选择晶体管SST的其余存储单元(例如,MC4至MC6)可以被称为上存储单元组。

在下文中,将参照图9至图11进行详细描述,图9至图11示出用与第一结构不同的三维(3D)非易失性存储器件来实现的根据一个实施例的存储系统中的存储器件。

图9是示意性地图示用与上面参照图5至图8描述的第一结构不同的三维(3D)非易失性存储器件来实现的存储器件的透视图,且示出图4的多个存储块中的存储块BLKj。图10是图示沿着图9的线VII-VII’截取的存储块BLKj的截面图。

参见图9和图10,图1的存储器件150的多个存储块之中的存储块BLKj可以包括沿第一方向至第三方向延伸的结构。

可以设置衬底6311。例如,衬底6311可以包括用第一类型杂质掺杂的硅材料。例如,衬底6311可以包括用p型杂质掺杂的硅材料。衬底6311可以是p型阱(例如,口袋型p阱)。衬底6311还可以包括围绕p型阱的n型阱。虽然在描述的实施例中,衬底6311被例示为是p型硅,但是要注意的是,衬底6311不局限于p型硅。

沿x轴方向和y轴方向延伸的第一导电材料6321至第四导电材料6324设置在衬底6311之上。第一导电材料6321至第四导电材料6324可以沿z轴方向分开预设距离。

沿x轴方向和y轴方向延伸的第五导电材料6325至第八导电材料6328可以设置在衬底6311之上。第五导电材料6325至第八导电材料6328可以沿z轴方向分开预设距离。第五导电材料6325至第八导电材料6328可以沿y轴方向与第一导电材料6321至第四导电材料6324分开。

可以设置穿过第一导电材料6321至第四导电材料6324的多个下柱体DP。每个下柱体DP可以沿z轴方向延伸。此外,可以设置穿过第五导电材料6325至第八导电材料6328的多个上柱体UP。每个上柱体UP可以沿z轴方向延伸。

下柱体DP和上柱体UP中的每个柱体可以包括内部材料6361、中间层6362和表面层6363。中间层6362可以用作单元晶体管的沟道。表面层6363可以包括阻挡电介质层、电荷储存层和隧道电介质层。

下柱体DP和上柱体UP可以通过管栅PG彼此电耦接。管栅PG可以布置在衬底6311中。例如,管栅PG可以包括与下柱体DP和上柱体UP相同的材料。

沿x轴方向和y轴方向延伸的第二类型的掺杂材料6312可以设置在下柱体DP之上。例如,第二类型的掺杂材料6312可以包括n型硅材料。第二类型的掺杂材料6312可以用作公共源极线CSL。

漏极6340可以设置在上柱体UP之上。漏极6340可以包括n型硅材料。沿y轴方向延伸的第一上导电材料6351和第二上导电材料6352可以设置在漏极6340之上。

第一上导电材料6351与第二上导电材料6352可以沿x轴方向彼此分开。第一上导电材料6351和第二上导电材料6352可以由金属形成。第一上导电材料6351和第二上导电材料6352与漏极6340可以通过接触插塞彼此电耦接。第一上导电材料6351和第二上导电材料6352可以分别用作第一位线BL1和第二位线BL2。

第一导电材料6321可以用作源极选择线SSL。第二导电材料6322可以用作第一虚设字线DWL1。第三导电材料6323和第四导电材料6324可以分别用作第一主字线MWL1和第二主字线MWL2。第五导电材料6325和第六导电材料6326可以分别用作第三主字线MWL3和第四主字线MWL4。第七导电材料6327可以用作第二虚设字线DWL2。第八导电材料6328可以用作漏极选择线DSL。

下柱体DP和邻近于下柱体DP的第一导电材料6321至第四导电材料6324可以形成下串。上柱体UP和邻近于上柱体UP的第五导电材料6325至第八导电材料6328可以形成上串。下串与上串可以通过管栅PG彼此电耦接。下串的一端可以电耦接至用作公共源极线CSL的第二类型的掺杂材料6312。上串的一端可以通过漏极6340电耦接至对应的位线。一个下串和一个上串可以形成一个单元串,该单元串电耦接在用作公共源极线CSL的掺杂材料6312与用作位线BL的上导电材料层6351和6352中对应的一个之间。

例如,下串可以包括源极选择晶体管SST、第一虚设存储单元DMC1、第一主存储单元MMC1和第二主存储单元MMC2。上串可以包括第三主存储单元MMC3、第四主存储单元MMC4、第二虚设存储单元DMC2以及漏极选择晶体管DST。

在图9和图10中,上串和下串可以形成NAND串NS。NAND串NS可以包括多个晶体管结构TS。由于以上参照图7详细描述了包括在图9和图10的NAND串NS中的晶体管结构,因此这里将省略其详细描述。

图11是图示具有如上面参照图9和图10描述的第二结构的存储块BLKj的等效电路的电路图。为了方便起见,仅示出了第二结构中的在存储块BLKj中形成对的第一串ST1和第二串ST2。

参照图11,在存储器件150的多个块之中的具有第二结构的存储块BLKj中,可以以定义多个对的方式来设置多个单元串,如以上参照图9和图10所描述的,每个单元串利用经由管栅PG而电耦接的一个上串和一个下串来实施。

即,在具有第二结构的存储块BLKj中,例如,沿第一沟道CH1(未示出)层叠的存储单元CG0至CG31、至少一个源极选择栅极SSG1和至少一个漏极选择栅极DSG1可以形成第一串ST1,以及例如,沿第二沟道CH2(未示出)层叠的存储单元CG0至CG31、至少一个源极选择栅极SSG2和至少一个漏极选择栅极DSG2可以形成第二串ST2。

第一串ST1和第二串ST2可以电耦接至同一漏极选择线DSL和同一源极选择线SSL。第一串ST1可以电耦接至第一位线BL1,而第二串ST2可以电耦接至第二位线BL2。

虽然图11示出了第一串ST1和第二串ST2电耦接至同一漏极选择线DSL和同一源极选择线SSL,但是可以设想第一串ST1和第二串ST2可以电耦接至同一源极选择线SSL和同一位线BL,第一串ST1可以电耦接至第一漏极选择线DSL1,以及第二串ST2可以电耦接至第二漏极选择线DSL2。此外,可以设想第一串ST1和第二串ST2可以电耦接至同一漏极选择线DSL和同一位线BL,第一串ST1可以电耦接至第一源极选择线SSL1,以及第二串ST2可以电耦接至第二源极选择线SSL2。

在下文,将参照图12至图14来详细描述根据本发明的实施例的用于存储系统中的存储器件的数据处理操作。具体地,下文将更详细地描述当数据被编程到存储器件中时的数据处理操作作为一个示例。

例如,在图1的存储系统中,例如,数据处理操作可以包括与从主机102接收到的命令相对应的命令数据。例如,命令数据可以是与从主机102接收到的写入命令相对应的写入数据。命令数据可以储存在包括在控制器130的存储器144中的缓冲器/高速缓存器中。数据处理操作还可以包括写入储存在存储器件150中所包括的多个存储块中的缓冲器/高速缓存器中的数据。另外说明,储存在缓冲器/高速缓存器中的数据可以被编程到存储器件的多个存储块中。编程到存储器件150中的数据可以根据需要而被更新且再编程到存储器件150中多次。

在图12的实施例中,与从主机102接收到的写入命令相对应的写入数据可以被编程和储存在上述的存储器件150的多个存储块152、154和156中。具体地,存储块中的每个可以包括多个页,且写入数据可以编程和储存在与写入命令相对应的存储块的页中。当针对编程到存储块的页中的写入数据从主机102接收到写入命令时,写入数据可以被更新并编程到相同存储块或不同存储块的不同页中。因此,储存在存储块的先前页中的写入数据可以变成无效数据,且存储块的先前页可以变成无效页。如果在上述的存储器件150的存储块中包括无效页,则可以在存储器件150的存储块之间执行处理数据的操作(例如,垃圾收集(GC)),以便最大化存储器件150的利用率。下面将更加详细地描述对存储器件150的存储块中的数据编程执行垃圾收集的示例。

注意,控制器130可以执行以下将描述的数据处理操作。例如,如上所述,控制器130的处理器134可以经由FTL执行数据处理。例如,处理器134可以经由FTL针对有效页搜索存储器件150的存储块,并通过执行垃圾收集来产生空存储块、开放存储块或空闲存储块。

在本发明的一个实施例中,控制器130可以将与从主机102接收到的写入命令相对应的写入数据储存在存储器144中包括的缓冲器中,然后可以将储存在缓冲器中的数据编程到存储器件150中包括的多个存储块中的特定一个存储块的一个页中。例如,控制器130可以通过执行编程操作来将储存在缓冲器中的数据写入至第一存储块的第一页中。另外,当控制器130可以从主机102接收针对第一存储块的第一页的写入命令时,控制器130可以对储存在第一存储块的第一页中的数据执行编程操作。针对数据编程操作,控制器130可以将第一页的数据储存在相同存储块的不同页中或不同存储块的页中。例如,第一页的数据可以储存在第一存储块的第二页中或第二存储块的第一页中。在这种情况下,控制器130可以将储存在存储块的先前页中的数据(例如,储存在第一存储块的第一页中的数据)视为无效数据。此外,第一存储块的第一页可以变成无效页。

另外,在本发明的一个实施例中,数据处理操作可以包括以下作为示例描述的对存储器件150的存储块执行的垃圾收集。例如,在数据处理操作中,控制器130可以在存储器件150的存储块之间复制数据并储存复制的数据。控制器130可以复制存储块中包括的有效页的数据(即,有效数据)并且将复制的数据储存在尚未执行数据编程的存储块中,诸如空存储块、开放存储块或空闲存储块。可以通过考虑已经完成了数据编程的存储块中的无效页,换言之,已经针对每个存储块中包括的所有页完成了数据写入操作的存储块(即,已经执行了数据编程的封闭存储块)的无效页,来执行复制操作和储存操作。

在一个实施例中,可以对储存在存储器件150的存储块中的数据执行更新编程,即,数据处理操作,在该数据处理操作中,可以从主机102接收针对储存在存储块中的数据的写入命令并且可以将与写入命令相对应的写入数据编程到存储器件150的存储块中。

下文将更详细地描述垃圾收集的示例。在垃圾收集中,用于数据处理的存储块(例如,源存储块)可以从存储器件150中的封闭存储块来识别。然后,储存在源存储块中的数据可以被复制并储存在目标存储块(诸如尚未对存储块(也经常称为开放或空闲存储块)中包括的所有页执行数据编程的空存储块、开放存储块或空闲存储块)中。可以对源存储器执行擦除操作,从而将源存储器产生为空存储块、开放存储块或空闲存储块。

现在参见图12,控制器130可以将与从主机102接收到的写入命令相对应的写入数据储存在控制器130的存储器144中包括的缓冲器中,并且可以将储存的写入数据编程到存储器件1200中包括的多个存储块(例如,block0 1210、block1 1220、block2 1230以及blocki 1240)中。

如上所述,存储器件150中包括的多个存储块中的每个可以包括多个页。存储块中的每个可以包括多个子存储块,所述多个子存储块包括预设数量的页。例如,存储块中的每个可以划分为多个子存储块,所述多个子存储块包括预设数量的页。在本发明的一个实施例中,当可以对储存在存储器件150的存储块中的数据执行更新编程时,可以识别与更新编程相对应的存储块的子存储块中的有效页。然后,指示存储块的子存储块中的有效页的数量的有效页计数(“VPC”)信息可以被包括在映射列表中。例如,控制器130可以产生关于存储块的映射信息和VPC信息,将VPC信息和映射信息储存在存储块中,以及基于VPC信息来执行存储器件150的存储块之间的数据处理。例如,控制器130可以基于VPC信息来检查映射信息和执行垃圾收集。

例如,在本发明的一个实施例中,与每个存储块中包括的多个子存储块中的每个子存储块相关的VPC信息可以以位映射的形式包括在映射列表中。可以基于包括在映射列表中的VPC信息来识别其映射信息需要被搜索和检查的存储块,以便对存储器件150的存储块执行数据处理。另外,可以在存储块中基于VPC信息搜索需要执行数据处理的存储块(例如,源存储块)。储存在源存储块的有效页中的数据(即,有效数据)可以被复制和储存在目标存储块中。在这种情况下,控制器130可以将映射列表储存在控制器130的存储器144中或储存在存储器件150的存储块中的特定一个存储块中。指示读取/写入数据已经储存在存储器件150中的映射信息,例如,包括与读取/写入数据相关的储存信息的映射信息,可以与地址信息、页信息、逻辑到物理(L2P)信息、物理到逻辑(P2L)信息、或包括此类信息的元数据一起储存在已经储存了映射列表的特定存储块中。

例如,更具体地,存储器件150中包括的多个存储块中的每个,例如,存储器件1200的block0 1210、block1 1220、block2 1230和blocki 1240中的每个可以包括多个页。另外,block0 1210、block1 1220、block2 1230和blocki 1240中的每个可以包括多个子存储块,在所述多个子存储块中,预设数量的页(例如,六个页)可以被分组。例如,存储器件1200的block0 1210、block1 1220、block2 1230和blocki 1240中的每个可以划分成多个子存储块,每个子存储块包括6个页。例如,存储器件1200的block0 1210可以包括子存储块0 1212、子存储块1 1214、子存储块2 1216以及子存储块3 1218,子存储块0 1212、子存储块1 1214、子存储块2 1216和子存储块3 1218中的每个可以包括六个页。存储器件1200的block1 1220可以包括子存储块0 1222、子存储块1 1224、子存储块2 1226和子存储块3 1228,子存储块0 1222、子存储块1 1224、子存储块2 1226和子存储块3 1228中的每个可以包括六个页。存储器件1200的block2 1230可以包括子存储块0 1232、子存储块1 1234、子存储块2 1236和子存储块3 1238,子存储块0 1232、子存储块1 1234、子存储块2 1236和子存储块3 1238中的每个可以包括六个页。存储器件1200的blocki 1240可以包括子存储块0 1242、子存储块1 1244、子存储块2 1246和子存储块3 1248,子存储块0 1242、子存储块1 1244、子存储块2 1246和子存储块3 1248中的每个可以包括六个页。即,存储器件1200的block0 1210、block1 1220、block2 1230和blocki 1240可以被划分为:每个包括6个页的相应的子存储块0 1212、1222、1232和1242,每个包括6个页的相应的子存储块1 1214、1224、1234和1244,每个包括6个页的相应的子存储块2 1216、1226、1236和1246,以及每个包括6个页的相应的子存储块3 1218、1228、1238和1248。

存储器件1200的block0 1210、block1 1220、block2 1230和blocki 1240中的每个包括的每个子存储块中包括的页的数量可以通过考虑控制器130的存储器144的大小来确定。例如,存储器件1200的block0 1210、block1 1220、block2 1230和blocki 1240中的每个所包括的每个子存储块中所分组的页的数量可以通过考虑控制器130的存储器144用于产生和储存VPC信息所需的大小来确定。例如,如果控制器130的存储器144的所需大小为最小时,单个页可以形成每个子存储块,且指示每个页是否为有效页的位映射可以成为与存储器件1200的块block0 1210、block1 1220、block2 1230和blocki 1240相关的VPC信息。在这种情况下,当单个页形成每个子存储块且对应的页为有效页时,可以在指示每个页是否为有效页的位映射中设置值“1”。当单个页形成每个子存储块且对应的页为无效页时,可以在指示每个页是否为有效页的位映射中设置值“0”。因此,与存储器件1200的块block0 1210、block1 1220、block2 1230和blocki 1240相关的VPC信息可以以位映射的形式而被包括。

另外,当控制器130对储存在存储器件150中包括的多个存储块(例如,上述的存储器件1200的block0 1210、block1 1220、block2 1230和blocki 1240)中的数据执行更新编程时,与多个存储块中包括的有效页相关的信息(即,与多个存储块相关的VPC信息)可以储存在多个存储块block0 1210、block1 1220、block2 1230和blocki 1240中的每个的特定区域中,且还可以以位映射的形式包括在映射列表1250中。

例如,控制器130可以将与存储器件1200的多个存储块block0 1210、block1 1220、block2 1230和blocki 1240中的每个的最新更新编程相关的VPC信息(即,与多个存储块block0 1210、block1 1220、block2 1230和blocki 1240的当前状态相关的VPC信息)储存在多个存储块block0 1210、block1 1220、block2 1230和blocki 1240中的每个的特定区域中。与最新更新编程相关的VPC信息可以储存在block0 1210的区域1219、block1 1220的区域1229、block2 1230的区域1239以及blocki 1240的区域1249中。另外,控制器130可以将储存在多个存储块block0 1210、block1 1220、block2 1230和blocki 1240中的每个存储块的特定区域中的VPC信息以位映射的形式包括在映射列表1250中。控制器130可以将具有与多个存储块block0 1210、block1 1220、block2 1230和blocki 1240中的每个存储块的当前状态相关的VPC信息的映射列表1250储存在控制器130的存储器144中。

例如,关于block0 1210的VPC信息可以储存在block0 1210的区域1219中。关于block1 1220的VPC信息可以储存在block1 1220的区域1229中。关于block2 1230的VPC信息可以储存在block2 1230的区域1239中。关于blocki 1240的VPC信息可以储存在blocki 1240的区域1249中。

另外,与存储器件1200的多个存储块block0 1210、block1 1220、block2 1230和blocki 1240相关的VPC信息可以储存在映射列表1250的对应列中。关于block0 1210的VPC信息可以储存第一列1260中,关于block1 1220的VPC信息可以储存在第二列1270中,关于block2 1230的VPC信息可以储存在第三列1280中,以及关于blocki 1240的VPC信息可以储存在第i-1列1290中。

另外,由于关于块1210、1220、1230和1240的VPC信息可以以位映射的形式包括在映射列表1250中,因此关于块1210、1220、1230和1240的子存储块的VPC信息可以储存在映射列表1250的相应的列1260、1270、1280和1290的特定位区域中。例如,映射列表1250的列1260、1270、1280和1290可以对应于存储器件1200的相应的块1210、1220、1230和1240,且映射列表1250的列1260、1270、1280和1290的特定位区域可以对应于块1210、1220、1230和1240的相应的子存储块。因此,与块1210、1220、1230和1240中的每个块的子存储块相关的VPC信息可以以位映射的形式储存在映射列表1250的对应的特定位区域中。

例如,与block0 1210的子存储块0 1212相关的VPC信息可以储存在映射列表1250的第一列1260的第一位区域1262中。与block0 1210的子存储块1 1214相关的VPC信息可以储存在映射列表1250的第一列1260的第二位区域1264中。与block0 1210的子存储块2 1216相关的VPC信息可以储存在映射列表1250的第一列1260的第三位区域1266中。与block0 1210的子存储块3 1218相关的VPC信息可以储存在映射列表1250的第一列1260的第四位区域1268中。

另外,与block1 1220的子存储块0 1222相关的VPC信息可以储存在映射列表1250的第二列1270的第一位区域1272中。与block1 1220的子存储块1 1224相关的VPC信息可以储存在映射列表1250的第二列1270的第二位区域1274中。与block1 1220的子存储块2 1226相关的VPC信息可以储存在映射列表1250的第二列1270的第三位区域1276中。与block1 1220的子存储块3 1228相关的VPC信息可以储存在映射列表1250的第二列1270的第四位区域1278中。

另外,与block2 1230的子存储块0 1232相关的VPC信息可以储存在映射列表1250的第三列1280的第一位区域1282中。与block2 1230的子存储块1 1234相关的VPC信息可以储存在映射列表1250的第三列1280的第二位区域1284中。与block2 1230的子存储块2 1236相关的VPC信息可以储存在映射列表1250的第三列1280的第三位区域1286中。与block2 1230的子存储块3 1238相关的VPC信息可以储存在映射列表1250的第三列1280的第四位区域1288中。

另外,与blocki 1240的子存储块0 1242相关的VPC信息可以储存在映射列表1250的第i-1列1290的第一位区域1292中。与blocki 1240的子存储块1 1244相关的VPC信息可以储存在映射列表1250的第i-1列1290的第二位区域1294中。与blocki 1240的子存储块2 1246相关的VPC信息可以储存在映射列表1250的第i-1列1290的第三位区域1296中。与blocki 1240的子存储块3 1248相关的VPC信息可以储存在映射列表1250的第i-1列1290的第四位区域1298中。

指示块1210、1220、1230和1240中的每个块的每个子存储块中包括的有效页的数量的位可以分配给储存与每个子存储块相关的VPC信息的特定位区域。可以分配1位给每个子存储块中包括的每个页。因此,由于每个子存储块可以包括六个页,因此可以为每个子存储块分配六个位。另外,如果对块1210、1220、1230和1240中的每个块中的子存储块的页中储存的数据执行更新编程,换言之,当从主机102接收到针对储存在子存储块的页中的数据的写入命令以及对该数据执行编程时,储存在与子存储块相对应的特定位区域中的VPC信息可以被更新。

假设存储器件1200的块block0 1210、block1 1220、block2 1230可以是封闭存储块,而存储器件1200的blocki 1240可以是目标存储块,以下将更详细地描述根据本发明的一个实施例的数据处理操作。

参见图12和图13,由于存储器件1200的块block0 1210、block1 1220、block2 1230可以是封闭存储块,因此与从主机102接收到的写入命令相对应的写入数据可以储存在存储器件1200的block0 1210、block1 1220、block2 1230的页中。指示写入数据储存在存储器件1200的block0 1210、block1 1220、block2 1230的页中的信息(例如,L2P信息1300和P2L信息1350)可以储存在控制器130的存储器144中或者存储器件1200的特定存储块中。例如,控制器130可以将与从主机102接收到的写入命令相对应的写入数据编程和储存在存储器件1200的block0 1210、block1 1220和block2 1230的页中。另外,控制器130可以根据块block0 1210、block1 1220和block2 1230的页中的数据的储存来产生映射信息。例如,控制器130可以产生L2P信息1300和P2L信息1350,并且可以储存上述产生的L2P信息1300和P2L信息1350,所述L2P信息1300包括具有逻辑页编号的数据的逻辑地址(1305)/物理地址(1310)信息,所述P2L信息1350包括储存在块block0 1210、block1 1220和block2 1230中的每个块的页中的数据的逻辑页编号信息。另外,储存的L2P信息1300和P2L信息1350可以根据写入数据的编程而更新。

例如,L2P信息1300可以包括与储存在存储器件1200的所有存储块(例如,block0 1210、block1 1220、block2 1230)的页中的数据相关的物理映射信息。另外,P2L信息1350可以包括与储存在存储器件1200的所有存储块的页中的数据相关的逻辑信息,诸如包括储存在block0 1210的页中的数据的逻辑页编号的block0 P2L表1360、包括储存在block1 1220的页中的数据的逻辑页编号的block1 P2L表1370以及包括储存在block2 1230的页中的数据的逻辑页编号的block2 P2L表1380。

如上所述,当控制器130可以接收针对储存在块block0 1210、block1 1220和block2 1230(即,封闭存储块)的页中的数据的写入命令时,它可以将与写入命令相对应的写入数据更新并编程到除了块block0 1210、block1 1220和block2 1230之外的新的特定存储块的页中。因此,控制器130可以根据针对这种新的特定存储块的页的写入数据的更新编程,来更新前述的L2P信息1300和P2L信息1350。

另外,控制器130可以响应于写入数据的更新编程来更新包括VPC信息的映射列表1250,并且将更新的映射列表1250与P2L信息1350一起储存在块block0 1210、block1 1220和block2 1230(即,封闭存储块)中。例如,控制器130可以更新包括与块block0 1210、block1 1220和block2 1230中的每个块的子存储块相关的VPC信息的映射列表。例如,控制器130可以响应于写入数据的更新编程,来对包括与block0 1210的子存储块相关的VPC信息的block0VPC列表1365以及block0 P2L表1360一起更新,以储存更新的映射列表和block0 P2L表1360。此外,控制器130可以响应于写入数据的更新编程,来将包括与block1 1220的子存储块相关的VPC信息的block1 VPC列表1375以及block1 P2L表1370一起更新,以储存更新的block1 VPC列表1375和block1 P2L表1370。另外,控制器130可以响应于写入数据的更新编程,来将包括与block2 1230的子存储块相关的VPC信息的block2 VPC列表1385以及block2 P2L表1380一起更新,以储存更新的block2 VPC列表1385和block2 P2L表1380。在这种情况下,如果存储器件1200的blocki 1240是封闭存储块,则控制器130可以响应于写入数据的更新编程,来将包括与blocki 1240的子存储块相关的VPC信息的blocki VPC列表1395以及blocki P2L表1390一起更新,以储存更新的blocki VPC列表1395和blocki P2L表1390。

例如,更具体地,当从主机102接收到针对储存在block0 1210(其为封闭存储块)的除了页0、页2、页3、页5、页8、页9、页18、页19、页21、页22和页23之外的其余页中的数据的写入命令时,控制器130可以将与写入命令相对应的写入数据编程到存储器件150的特定存储块中。因此,block0 1210的页0、页2、页3、页5、页8、页9、页18、页19、页21、页22以及页23可以成为有效页,而block0 1210的其余页可以成为无效页。在这种情况下,控制器130可以对block0 1210(其为封闭存储块)的子存储块(块0 1212、块1 1214、块2 1216以及块3 1218)中包括的有效页进行计数,以及可以将与block0 1210的子存储块(块0 1212、块1 1214、块2 1216以及块3 1218)相关的VPC信息(例如,“4205”)储存在上述的block0 1210的区域1 1219以及映射列表1250的第一列1260中。另外,控制器130可以将VPC信息“4205”和关于block0 1210的P2L信息(例如,block0 P2L表1360)一起储存在block0 VPC列表1364中。

另外,当可以从主机102接收到针对储存在block1 1220(其为封闭存储块)的除了页6、页7、页9、页12、页13、页14、页16、页17、页20以及页22之外的其余页中的数据的写入命令时,控制器130可以将与写入命令相对应的写入数据编程到存储器件150的特定存储块中。因此,block1 1220的页6、页7、页9、页12、页13、页14、页16、页17、页20以及页22可以成为有效页,而block1 1220的其余页可以成为无效页。在这种情况下,控制器130可以对block1 1220(其为封闭存储块)的子存储块(块0 1222、块1 1224、块2 1226以及块3 1228)中包括的有效页进行计数,以及可以将与block1 1220的子存储块(块0 1222、块1 1224、块2 1226以及块3 1228)相关的VPC信息(例如,“0352”)储存在上述的block1 1220的区域1 1229以及映射列表1250的第二列1270中。另外,控制器130可以将VPC信息“0352”和关于block1 1220的P2L信息(例如,block1 P2L表1370)一起储存在block1 VPC列表1375中。

另外,当可以从主机102接收到针对储存在block2 1230(其为封闭存储块)的除了页0、页4、页6、页7、页9、页10、页11、页14、页16和页17之外的其余页中的数据的写入命令时,控制器130可以将与写入命令相对应的写入数据编程到存储器件150的特定存储块中。因此,block2 1230的页0、页4、页6、页7、页9、页10、页11、页14、页16以及页17可以成为有效页,而block2 1230的其余页可以成为无效页。在这种情况下,控制器130可以对block2 1230(其为封闭存储块)的子存储块(块0 1232、块1 1234、块2 1236以及块3 1238)中包括的有效页进行计数,以及可以将与block2的子存储块(块0 1232、块1 1234、块2 1236以及块3 1238)相关的VPC信息(例如,“2530”)储存在上述的block2 1230的区域2 1239以及映射列表1250的第三列1280中。另外,控制器130可以将VPC信息“2530”和关于block2 1230的P2L信息(例如,block2 P2L表1380)一起储存在block2 VPC列表1358中。

因此,如果执行垃圾收集,则控制器130可以不需要对所有页的L2P信息1300执行搜索操作和检查操作。例如,控制器130可以不需要基于块block0 1210、block1 1220和block2 1230的用于识别封闭存储块中包括的有效页的P2L信息1350来对所有的块block0 1210、block1 1220和block2 1230(即,封闭存储块)的L2P信息1300执行搜索操作和检查操作。例如,控制器130可以将当前的VPC信息与先前的VPC信息进行比较,所述当前的VPC信息以位映射的形式包括在具有与块block0 1210、block1 1220以及block2 1230相关的当前的VPC信息的映射列表1250中,所述先前的VPC信息与块block0 1210、block1 1220以及block2 1230的P2L信息1350一起储存,例如,已经与块P2L表1360、1370和1380一起储存的且包括在块VPC列表1365、1375和1385中的先前的VPC信息。作为比较的结果,如果VPC信息已经改变,则控制器130可以仅仅对其VPC信息已经改变的块block0 1210、block1 1220以及block2 1230的子存储块搜索和检查P2L信息1350和L2P信息1300。另外,控制器130可以不针对其VPC信息尚未改变的块block0 1210、block1 1220以及block2 1230的子存储块来对P2L信息1350和L2P信息1300执行搜索操作和检查操作,以及可以基于映射列表1250中包括的VPC信息或与P2L信息1350一起储存的VPC信息来识别块block0 1210、block1 1220以及block2 1230(即,封闭存储块)中包括的有效页。另外,控制器130可以复制储存在块block0 1210、block1 1220以及block2 1230(即,封闭存储块)中包括的有效页中的有效数据,将复制的有效数据编程到blocki 1240(即,目标存储块)中包括的页中,以及通过对块block0 1210、block1 1220以及block2 1230(即,封闭存储块)执行擦除操作来将块block0 1210、block1 1220以及block2 1230产生为空存储块、开放存储块或空闲存储块。

当可以从主机102接收到包括修整(trim)或丢弃的取消映射命令(un-mapping command)时,控制器130可以将对应于取消映射命令的逻辑地址与关于存储器件150的存储块(例如,块block0 1210、block1 1220以及block2 1230)的L2P信息1300取消映射。然后,控制器130可以不更新P2L信息1350和L2P信息1300,但是可以将关于块block0 1210、block1 1220以及block2 1230的每个子存储块的VPC信息设置为“0”。因此,可以快速处理与取消映射命令相对应的取消映射操作。例如,当从主机102接收到取消映射命令时,控制器130可以不对与取消映射命令相对应的L2P信息1300和P2L信息1350执行更新操作(尤其是不对L2P信息1300执行更新操作),但是可以将储存在映射列表1250中的VPC信息和与P2L信息1350一起储存的关于块VPC列表1365、1375和1385的VPC信息都设置为“0”。例如,当从主机102接收到取消映射命令时,控制器130可以将指示在块block0 1210、block1 1220以及block2 1230的子存储块中仅存在无效页的VPC信息设置为“0”,由此能够快速处理与取消映射命令相对应的取消映射操作。例如,block0 1210(即,封闭存储块)的子存储块中包括的有效页可以被识别,如以下将更详细描述的。

参见图14,控制器130将与从主机102接收到的写入命令相对应的写入数据编程到上述的block0 1210(即,封闭存储块)。例如,控制器130可以从主机102接收与储存在block0 1210(即,封闭存储块)的除了页0、页2、页3、页5、页8、页9、页18、页19、页21、页22以及页23之外的其余页中的数据相对应的写入命令,并且可以将与写入命令相对应的写入数据编程到存储器件150的特定存储块中。因此,block0 1210的页0、页2、页3、页5、页8、页9、页18、页19、页21、页22以及页23可以成为有效页,而block0 1210的其余页可以成为无效页。控制器130可以对block0 1210(即,封闭存储块)的子存储块(块0 1212、块1 1214、块2 1216以及块3 1218)中包括的有效页进行计数。控制器130可以将与block0 1210的子存储块(块0 1212、块1 1214、块2 1216以及块3 1218)相关的VPC信息(例如,“4205”)储存在block0 1210的区域1 1219和映射列表1250的第一列1260中,以及还可以将VPC信息与block0 1210的P2L信息(例如,block0 P2L表1360)一起储存在block0 VPC列表1365中。

接着,当从主机102接收到针对储存在block0 1210(即,封闭存储块)的有效页的页2、页3、页5、页21以及页22中的数据的写入命令时,控制器130可以将与写入命令相对应的写入数据编程到存储器件150的特定存储块中。因此,根据block0 1210(即,封闭存储块)的更新编程,block0 1210的页2、页3、页5、页21以及页22可以成为无效页。因此,控制器130可以对block0 1210(即,封闭存储块)的子存储块(块0 1412、块1 1414、块2 1416以及块3 1418)中包括的有效页进行计数,并且将与block0 1210的子存储块(块0 1412、块1 1414、块2 1416以及块3 1418)相关的VPC信息例如“1203”(即,当前状态的VPC信息)储存在block0 1210的区域1 1419和映射列表1250的第一列1260中。

当控制器130识别出block0 1210(即,封闭存储块)中包括的有效页时,即,当控制器130在当前状态下识别出block0 1210的子存储块1412、1414、1416和1418中包括的有效页时,控制器130可以将储存在block0 1210的区域1 1419和映射列表1250中的VPC信息与包括在block0 VPC列表1365中的且与block0 P2L表1360(即,block0 1210的P2L信息)一起储存的VPC信息进行比较。如果作为比较的结果,与block0 1210的子存储块(块0 1412和块3 1418)相关的VPC信息(分别对应于映射列表1250中包括的第一列1260的第一位区域1262和第四位区域1268)已经改变,则控制器130可以通过对与block0 1210的子存储块(块0 1412和块3 1418)中的P2L信息1350相关的L2P信息1300执行搜索操作和检查操作,来识别block0 1210的子存储块(块0 1412和块3 1418)中包括的有效页。另外,控制器130可以对与子存储块(块0 1412和块3 1418)相关的P2L信息1350和L2P信息1300执行更新操作,以及可以对block0 P2L表1360执行更新操作。另外,如果作为比较的结果,与block0 1210的子存储块(块1 1414和块2 1416)相关的VPC信息没有改变,则控制器130可以基于映射列表1250中包括的VPC信息或储存在block0 VPC列表1365中的VPC信息来识别子存储块(块1 1414和块2 1416)中包括的有效页。

在这种情况下,控制器130可以将储存在block0 1210的区域1 1419和映射列表1250中的VPC信息与包括在block0 VPC列表1365中的且与block0 P2L表1360(即,block0 1210的P2L信息)一起储存的VPC信息进行比较。然后,控制器130可以识别block0 1419的子存储块1412、1414、1416和1418中包括的有效页,以及可以仅仅针对block0 1419的VPC信息已经改变的子存储块1412和1418搜索和检查P2L信息1350和L2P信息1300。因此,可以最小化对P2L信息1350和L2P信息1300的搜索操作和检查操作,以及可以最小化与对P2L信息1350和L2P信息1300的搜索操作和检查操作相对应的对P2L信息1350和L2P信息1300的更新操作。

另外,控制器130可以复制储存在block0 1210(即,封闭存储块)的子存储块1412、1414和1416的有效页中的有效数据,将复制的有效数据编程到blocki 1240(即,目标存储块)的页中,以及通过对block0 1210(即,封闭的存储块)执行擦除操作来将block0 1210产生为空存储块、开放存储块或空闲存储块。以下将参照图15更详细地描述根据本发明的一个实施例的由存储系统处理数据的操作。

参见图15,当在步骤1510处可以从主机接收到写入命令时,存储系统可以将与写入命令相对应的写入数据储存在存储器件的存储块中。具体地,当可以从主机接收到针对储存在存储器件的封闭存储块中的数据的写入命令时,存储系统可以通过执行数据编程来将与写入命令相对应的数据储存在存储器件的存储块中的另一个特定存储块中。换言之,存储系统可以执行更新编程。

另外,在步骤1520处,存储系统可以根据针对存储器件的存储块的数据编程和针对封闭存储块的数据更新编程,来产生和更新与存储器件的存储块相关的映射信息,例如,L2P信息和P2L信息。存储系统可以产生和更新与存储器件的每个存储块(尤其是封闭存储块)中包括的多个子存储块相关的VPC信息。在这种情况下,VPC信息可以与P2L信息一起储存在存储器件的对应的存储块中。

另外,在步骤1530,存储系统可以通过检查与子存储块相关的VPC信息,来识别每个封闭存储块中包括的子存储块中包括的有效页。在这种情况下,可以最小化对与封闭存储块相关的P2L信息和L2P信息的搜索操作和检查操作,因为与多个子存储块相关的VPC信息被检查。

接着,在步骤1540,存储系统可以对存储器件的封闭存储块执行垃圾收集。更具体地,存储系统可以复制储存在封闭存储块的子存储块中包括的有效页中的数据。然后,存储系统可以将复制的数据编程到目标存储块中包括的页中,以及通过对封闭存储块执行擦除操作,来将封闭存储块中的每个产生为空存储块、开放存储块或空闲存储块。存储系统可以将与从主机接收到的写入命令相对应的写入数据编程到上述的空存储块、开放存储块或空闲存储块的页中。

已经参照图12至图14详细描述了存储器件的存储块中的数据处理,包括:用于通过在存储器件的存储块中执行更新编程来产生空存储块、开放存储块或空闲存储块的操作;用于产生和更新与更新编程相对应的映射列表的操作;用于识别存储块中包括的有效页的操作;以及用于对与从主机接收到的写入命令相对应的写入数据执行存储块的垃圾收集的操作。因此,省略了操作的详细描述。

本发明提供了一种存储系统及其操作方法,所述存储系统可以通过最大化存储器件的使用效率来降低存储器件的数据处理操作的复杂性和性能要求。因此,相比于现有的系统,可以更快和更稳定地处理来往于存储器件的数据。

尽管已经出于说明的目的描述了各个实施例,但是对于相关领域的技术人员而言将明显的是,在不脱离所附权利要求所限定的本发明的精神或范围的情况下,可以进行各种改变和修改。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1