包含非易失性存储器设备和控制器的存储设备的制作方法

文档序号:13423612阅读:171来源:国知局
包含非易失性存储器设备和控制器的存储设备的制作方法

相关申请的交叉引用

本专利申请要求于2016年6月30日向韩国知识产权局提交的第10-2016-0082774号韩国专利申请的优先权,该韩国专利申请的全部内容通过引用并入于此。

本公开涉及半导体存储器。更具体地,本公开涉及包括非易失性存储器设备和控制器的存储设备。



背景技术:

存储设备是指在诸如计算机、智能电话和智能平板的主机设备的控制下存储数据的设备。存储设备包括将数据存储在诸如硬盘驱动(hdd)的磁盘上的设备,或者将数据存储在诸如固态驱动(ssd)或存储卡的半导体存储器(特别是非易失性存储器)上的设备。

非易失性存储器包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)、闪速存储器设备、相变ram(pram)、磁性ram(mram)、电阻式ram(rram)、铁电ram(fram)等。

随着半导体制造技术的发展,存储设备的容量增加。此外,随着半导体制造技术的发展,存储设备的集成度持续增加。存储设备的高集成度使得能够降低制造存储设备所需的成本。然而,存储设备的高集成度导致存储设备的规模缩小(scaledown)和结构改变。因此,在高集成度下出现各种新问题。



技术实现要素:

本公开的实施例提供了具有改进的速度和可靠性的存储设备。

根据实施例的方面,存储设备包括非易失性存储器设备和控制器。非易失性存储器设备包括多个存储块,多个存储块中的每个包括连接到多个串选择线的串选择晶体管,连接到多个接地选择线的接地选择晶体管和连接到多个字线的存储单元。控制器在读取操作期间从自多个存储块中选择的存储块的选择的存储单元读取数据。选择的存储单元对应于被选择作为读取目标的字线和串选择线两者。控制器将读取计数增加对应于选择的存储块的选择的字线和串选择线的读取权重,并且如果读取计数达到阈值,则对选择的存储单元执行刷新操作。在选择的存储块中,根据串选择线和字线的位置分配两个或更多个读取权重。

根据实施例的另一方面,存储设备包括非易失性存储器设备和控制器。非易失性存储器设备包括多个存储块。每个存储块包括在与基底垂直的方向上堆叠的并且与多个字线连接的多个存储单元。在读取操作期间,控制器读取从写入选择的存储单元中的多个页面数据选择的页面数据,该选择的存储单元对应于读取目标的选择的存储块的选择的字线。控制器将读取计数增加对应于选择的存储块的选择的字线和选择的页面数据的读取权重,并且如果读取计数达到阈值,则对选择的存储块执行刷新操作。在选择的存储块中,根据多个页面数据和字线的位置分配两个或更多个读权重。

根据实施例的另一方面,存储设备包括非易失性存储器设备和控制器。非易失性存储器设备包括多个存储块。每个存储块包括在与基底垂直的方向上堆叠的并且与多个字线连接的多个存储单元。在读取操作期间,控制器从自存储块选择的存储块的选择的存储单元读取数据。存储单元对应于被选择作为读取目标的字线。控制器将读取计数增加对应于选择的存储块的选择的字线的读取权重,并且如果读取计数达到阈值,则对选择的存储块执行刷新操作。在选择的存储块中,随着选择的存储单元和基底之间的距离增加,控制器降低读取权重。

附图说明

上述和其它目的和特征将根据参考以下附图的以下描述而变得明显,在附图中除非另有说明,否则相同的附图标记贯穿各个附图指代相同的部件,以及在附图中:

图1是示出根据本公开的实施例的存储设备的框图;

图2是示出根据本公开的实施例的存储设备的操作方法的流程图;

图3示出根据本公开的实施例的存储块的示例;

图4示出图3的存储块中的单元串的结构的示例;

图5示出根据本公开的实施例的设置读取权重的示例;

图6示出存储单元的阈值电压以及与其相对应的数据比特的示例;

图7示出根据基底sub和选择的存储单元之间的距离以及写入选择的存储单元的多条数据中的目标数据的位置来分配读取权重的示例;

图8示出考虑到存储块的串选择线来分配读取权重的示例;

图9是示出根据执行读取操作的次数来调整读取权重的示例的流程图;

图10是示出还基于与读取操作相关联的温度来调整读取权重的示例的流程图;以及

图11是示出根据本公开的实施例的控制器的框图。

具体实施方式

下面将参考附图更全面地描述本公开的实施例,使得本领域普通技术人员可以实施本文所述的实施例。

图1是示出根据本公开的实施例的存储设备100的框图。参考图1,存储设备100包括非易失性存储器设备110、控制器120和缓冲存储器130。

非易失性存储器设备110可以在控制器120的控制下执行写入操作、读取操作和擦除操作。非易失性存储器设备110可以从控制器120接收写入命令、地址和数据,并且可以将数据写入由地址所指定的或根据地址以其他方式可确定的存储空间的位置中。非易失性存储器设备110可以从控制器120接收读取命令和地址,可以从由地址所指定的或根据地址以其他方式可确定的存储空间的位置读取数据,以及可以将读取的数据输出到控制器120。非易失性存储器设备110可以从控制器120接收擦除命令和地址,并且可以擦除由地址所指定的或根据地址以其他方式可确定的存储空间的位置的数据。

非易失性存储器设备110可以包括多个存储块blk1至blkz。存储块blk1至blkz中的每个可以包括多个存储单元。存储单元可以形成非易失性存储器设备110的存储空间。存储块blk1至blkz中的每个还可以包括使得能够彼此独立地选择存储单元的选择晶体管。存储块blk1至blkz可以根据非易失性存储器设备110的操作特性或结构特性来区分。将参考图3来描述将存储块blk1至blkz彼此区分的示例。

非易失性存储器设备110可以包括闪速存储器、相变随机存取存储器(pram)、铁电ram(feram)、磁ram(mram)、电阻式ram(rram)等。

控制器120可以访问非易失性存储器设备110和缓冲存储器130。控制器120可以响应于外部主机设备(未示出)的请求来执行写入操作、读取操作和擦除操作。控制器120可以将写入请求的数据写入非易失性存储器设备110,并且可以从非易失性存储器设备110读取和输出读取请求的数据。

控制器120可以通过使用缓冲存储器130来管理存储设备100。例如,控制器120可以将要写入非易失性存储器设备110的数据或从非易失性存储器设备110读取的数据临时存储到缓冲存储器130中。控制器120可以将管理非易失性存储器设备110所需的元数据加载到缓冲存储器130上。

控制器120可以从外部主机设备接收基于逻辑地址的请求。由控制器120驱动的闪存转换层(flashtranslationlayer,ftl)可以将逻辑地址转换为非易失性存储器设备110的物理地址。控制器120可以向非易失性存储器设备110提供物理地址。在逻辑地址和物理地址之间的转换需要的映射数据md可以存储在非易失性存储器设备110中,以及可以被加载到缓冲存储器130上并且在缓冲存储器130上使用。闪存转换层ftl可以基于加载到缓冲存储器130上的映射数据md执行逻辑地址和物理地址之间的转换。

控制器120可以对在非易失性存储器设备110中执行的读取操作进行计数。例如,控制器120可以管理关于非易失性存储器设备110的每个存储块或每个擦除单元的读取计数。擦除单元可以是每个存储块的一部分或者两个或更多个存储块的组合,并且可以指示在擦除操作中同时擦除的一组存储单元。以下,为了便于描述,与每个存储块相关联的描述可以被认为与每个存储块或每个擦除单元相关联。

关于读取计数,控制器120可以包括权重模块wm和计数器cnt。权重模块wm可以基于由读取目标的物理地址或位置所识别的或以其他方式与读取目标的物理地址或位置相对应的非易失性存储器设备110的读取目标来来检测或计算读取权重。当对每个存储块执行读取操作并且检测或计算读取权重时,计数器cnt可以通过读取权重增加读取计数。例如,当数据被写入每个存储块时,计数器cnt可以将读取权重添加到读取计数。可以基于在每个存储块中选择的读取目标或读取目标的位置从两个或更多个值中选择读取权重。控制器120可以基于读取计数来确定是否执行每个存储块的刷新操作。

在实施例中,闪存转换层ftl、权重模块wm和控制器120的计数器cnt中的每个可以采用电路、状态机、软件、固件或者其两个或更多个的组合来实施。

图2是示出根据本公开的实施例的存储设备100的操作方法的流程图。参考图1和图2,在操作s110中,控制器120可以从外部主机设备接收读取命令和地址。控制器120可以例如从外部主机设备接收包括逻辑地址的读取请求。

在操作s120中,控制器120可以选择读取操作。例如,闪存转换层ftl可以基于映射数据md将逻辑地址转换为非易失性存储器设备110的物理地址。控制器120可以向非易失性存储器设备110提供读取命令和物理地址。响应于读取命令,非易失性存储器设备110可以从与物理地址相对应的存储单元读取数据,并且可以将读取数据输出到控制器120。控制器120可以将从非易失性存储器设备110接收的数据输出到外部主机设备。从非易失性存储器设备110读取的数据可以在被输出到外部主机设备之前由缓冲存储器130缓冲。

在操作s130中,控制器130可以基于物理地址来检测读取权重。例如,可以识别根据物理地址选择作为读取操作的目标的存储单元,并且权重模块wm可以检测对应于选择的存储单元的位置(例如,物理地址)的读取权重。例如,对应于存储单元的位置(例如,地址)的读取权重可以预先存储在控制器120中作为非易失性信息。另外,如映射数据md那样,读取权重可以预先存储在非易失性存储器设备110中,以及可以被加载到缓冲存储器130上并且在缓冲存储器130上使用。

在操作s140中,控制器120可以通过检测的读取权重来增加读取计数。例如,计数器cnt可以将由权重模块wm检测的读取权重添加到先前的读取计数。

操作s130和操作s140可以与在操作s120中执行的读取操作并行地实行。

在操作s150中,控制器120可以确定读取计数是否达到阈值。如果读取计数未达到阈值(s150=否),则处理结束。如果读取计数达到阈值(s150=是),则执行操作s160。在操作s160中,控制器120可以执行刷新操作。例如,控制器120可以调度由物理地址识别的或以其他方式与物理地址相对应的存储块的刷新操作。

每当对每个存储块执行读取操作时,可能会发生读取干扰。读取干扰可能加压力(stress)于未被选择作为读取目标的存储单元。例如,读取干扰可能引起未被选择的存储单元的阈值电压的改变。存储在未被选择的存储单元中的数据可以根据读取干扰的累积而变化。

刷新操作包括从存储块的存储单元读取有效数据并且将读取的数据写入另一个存储块的存储单元。如果执行刷新操作,则可以将被写入存储块并且经历读取干扰的数据新写入另一个存储块。当数据被新写入另一个存储块时,读取干扰的影响消失。因此,如果执行刷新操作,则读取干扰的影响消失,从而可以恢复数据的可靠性。

在存储在每个存储块中的数据由于读取干扰的累积而损坏到损坏的数据无法恢复的程度之前,根据本公开的实施例的存储设备100可以通过刷新操作来恢复数据的可靠性。

根据本公开的实施例的权重模块wm基于对其执行读取操作的每个存储块的存储单元的物理地址(即,其物理位置)来检测读取权重。读取权重可以被认为是通过量化在对每个存储块执行读取操作时发生的读取干扰而获得的值。

根据本公开的实施例的计数器cnt可以将针对每个存储块检测的读取权重积累为读取计数。读取计数可以被认为是通过量化每个存储块的累积的读取干扰而获得的值。

如参考图2所述,根据本公开的实施例的存储设备100可以基于由权重模块wm和计数器cnt管理的读取计数来执行刷新操作。也就是说,可以使用根据被选择作为读取目标的每个存储块的存储单元的位置而变化的读取干扰的影响来确定是否执行刷新操作。当执行刷新操作时,可以校正写入非易失性存储器设备110中的数据的可靠性。此外,在存储设备100中执行刷新操作的次数可能减少,并且可以提高存储设备100的速度。

图3示出根据本公开的实施例的存储块blka的示例。参考图3,多个单元串cs可以按行和列布置在基底sub上。单元串cs可以共同连接到形成在基底sub上(或在基底sub中)的公共源极线csl。在图3中,举例说明了基底sub的位置,以帮助理解存储块blka的结构。图3中实施例被举例说明为公共源极线csl连接到单元串cs的下端。然而,将公共源极线csl电连接到单元串cs的下端就足够了。然而,本公开的实施例可以不限于公共源线csl物理上位于单元串cs的下端的情况。在实施例中,单元串cs在图3中示出被布置为4×4。然而,本公开的实施例不限于单元串cs的4×4布置。

每行的单元串可以连接到第一接地选择线gsl1至第四接地选择线gsl4中的相应的一个以及第一串选择线ssl1至第四串选择线ssl4中的相应的一个。每列的单元串可以连接到第一位线bl1至第四位线bl4中的相应的一个。为了便于说明,连接到第二接地选择线gsl2和第三接地选择线gsl3或第二串选择线ssl2和第三串选择线ssl3的单元串被描绘为模糊的。

每个单元串可以包括连接到相应的接地选择线的至少一个接地选择晶体管gst、分别连接到多个字线wl1至wl8的多个存储单元mc以及连接到相应的串选择线的至少一个(或两个)串选择晶体管sst。在每个单元串cs中,接地选择晶体管gst、存储单元mc和串选择晶体管sst可以沿着与基底sub垂直的方向彼此串联连接,并且可以沿着与基底sub垂直的方向顺序堆叠。

以与基底sub或接地选择晶体管gst相同高度(或次序)布置的单元串cs的存储单元可以连接到相同字线。布置在与基底sub或接地选择晶体管gst不同的高度(或次序)的单元串cs的存储单元可以连接到不同字线。

存储块blka可以设置在三维(3d)存储阵列。3d存储阵列单片地形成在具有布置在硅基底上方的有源区域和与存储单元mc的操作相关联的电路的存储单元mc阵列的一个或多个物理级中。与存储单元mc的操作相关联的电路可以位于该基底的上方或内部。术语“单片”意味着阵列的每个级的层直接沉积在3d存储阵列的每个在下级的层上。

在本公开的实施例中,3d存储阵列包括垂直定向的垂直单元串cs(或nand串),使得至少一个存储单元位于另一个存储单元上。每个存储单元可以包括电荷俘获层(chargetraplayer)。每个单元串还可以包括置于存储单元mc上的至少一个选择晶体管sst。至少一个选择晶体管可以具有与存储单元mc相同的结构,并且可以与存储单元mc一致地形成。

以下通过引用并入本文的专利文献描述了三维存储阵列的合适配置,其中,三维存储阵列被配置为多级,在各级之间共享字线和/或位线:第7,679,133号、第8,553,466号、第8,654,587号、第8,559,235号美国专利以及第2011/0233648号美国专利公开。

图4是示出图3的存储块blka中的单元串的结构的示例的视图。参考图3和图4,在基底sub上设置有柱pl,使得柱pl沿垂与基底sub垂直的方向延伸以与基底sub接触。图4所示的接地选择线gsl、字线wl1至wl8以及串选择线ssl中的每个可以由与基底sub平行的导电材料形成,例如,金属材料。柱pl可以通过形成串选择线ssl、字线wl1至wl8和接地选择线gsl的导电材料与基底sub接触。

图4中还示出沿a-a'线截取的截面图。在实施例中,示出对应于第一字线wl1的第一存储单元mc1的截面图。柱pl可以包括圆柱体bd。气隙ag可以限定在主体bd的内部。主体bd可以包括p型硅,并且可以是将形成通道的区域。柱pl还可以包括围绕主体bd的圆柱形隧道绝缘层ti和围绕隧道绝缘层ti的圆柱形电荷俘获层ct。可以在第一字线wl和柱pl之间设置阻挡绝缘层bi。主体bd、隧道绝缘层ti、电荷俘获层ct、阻挡绝缘层bi和第一字线wl可以构成电荷俘获型晶体管,其形成在与基底sub或基底sub的上表面垂直的方向上。串选择晶体管sst、接地选择晶体管gst和其它存储单元可以具有与第一存储单元mc1相同的结构。

在制造单元串cs的过程中,随着与基底sub的距离减小,柱pl的宽度或平行于基底sub的上表面的柱pl的截面积可能变小。因此,当将相同的电压施加到接地选择晶体管gst、存储单元mc和串选择晶体管sst的主体时,形成在与基底sub相邻的存储单元处或接地选择晶体管gst处的电场可以大于形成在远离基底sub的存储单元处或串选择晶体管sst处的电场。类似地,当相同的电压施加到接地选择线gsl、字线wl1至wl8和串选择线ssl时,形成在与基底sub相邻的存储单元处或接地选择晶体管gst处的电场可以大于形成在远离基底sub的存储单元处或串选择晶体管sst处的电场。上述特性可能对执行读取操作时产生的读取干扰产生影响。

在实施例中,在读取操作期间,将选择读取电压施加到连接到被选择作为读取目标的存储单元的字线。选择读取电压具有在存储单元的阈值电压范围内的电平。由于在选择的存储单元处的电场强度相对较小,因此在选择的存储单元处不会发生读取干扰,或者可能发生很少的读取干扰。在读取操作期间,将非选择读取电压施加到连接到未被选择作为读取目标的存储单元的每个字线。非选择读取电压具有超出存储单元的阈值电压范围的电平。由于在未被选择的存储单元处的电场强度相对较大,因此在未被选择的存储单元处可能发生读取干扰。

具体地,施加到与选择的字线紧邻的未被选择的字线的非选择读取电压的电平高于施加到其它未被选择的字线的非选择读取电压的电平。因此,与连接到与其他未被选择的字线相邻的未被选择的字线的存储单元处发生的读取干扰可能大于在连接到与被选择的字线相邻的未被选择的字线的存储单元处发生的读取干扰。在与彼此相邻的未被选择的字线连接的存储单元处发生的读取干扰可以被称为“第一读取干扰”。

此外,如参考图4所述,随着存储单元与基底sub或接地选择晶体管gst之间的距离减小,存储单元处的电场强度变大。因此,随着存储单元与基底sub或接地选择晶体管gst之间的距离减小,存储单元处发生的读取干扰变得更大。连接到靠近基底sub的下部字线(lowerwordline)(例如,第一字线wl1至第四字线wl4)的存储单元处发生的读取干扰可以被称为“第二读取干扰”。

当对下部字线(或与基底sub相邻或接近的字线)执行读取操作时,连接到下部字线的某些(但不是全部)存储单元可能经历第一读取干扰和第二读取干扰两者。由于第一读取干扰和第二读取干扰之间的重叠,可能会发生第三读取干扰。第三读取干扰可能是当对存储块blka执行读取操作时发生的最强读取干扰。

如参考图1和图2所述,可以使用刷新来解决在存储单元处累积的读取干扰。例如,在存储块blka中,可以计算、测量或预测存储单元可以容许的读取干扰量。此外,可以计算、测量或预测在对存储块执行每个读取操作时发生的读取干扰量。可以基于读取干扰的容许量和每个读取操作的读取干扰量来计算存储块blka可以容许的读取操作的数量,即阈值。

如果将执行一次读取操作时发生的读取干扰量设置为等于或大于第三读取干扰的值,则可以在写入存储块blka的数据被损坏之前执行刷新操作。因此,可以保持写入存储块blka中的数据的可靠性。然而,导致刷新操作的存储块blka的读取操作数量与执行刷新操作的次数成反比。刷新操作数量的增加导致存储设备100的操作速度降低。

相反,如果将执行一次读取操作时发生的读取干扰量设置为低于第三读取干扰的值,则可以减少对存储块blka执行刷新操作的次数。然而,如果迭代地(即,多次)执行导致读取干扰的存储块blka的读取操作,则在执行刷新操作之前,写入存储块blka的数据可能由于高读取干扰(例如,第三读取干扰电平)而丢失。

根据本公开的实施例的存储设备100可以基于指示被选择作为读取操作的目标的存储单元或字线的位置的地址来检测读取权重,并且可以基于检测的读取权重来增加读取计数。可以考虑到在对每个字线执行的读取操作期间发生的实际读取干扰的量来设置读取权重。因此,可能能够防止写入存储块blka中的数据由于读取干扰而丢失,并且减少执行刷新操作的次数。也就是说,提供了具有改进的速度和可靠性的存储设备。下面,与基底sub相邻或与基底sub的距离可以解释为意味与基底sub或接地选择晶体管gst相邻或与基底sub或接地选择晶体管gst的距离。然而,距离,该词语当在本文中使用时,可以通过居于中间的晶体管的数量(如果有的话)来测量,以及通过更传统的测度(诸如厘米或英寸)来测量,即使传统的测度是与基底的实际距离不精确的估计。

图5示出根据本公开的实施例的设置读取权重的示例。参考图3、图4和图5,随着被选择作为读取目标的存储单元变得更接近基底sub,第一读取干扰和第二读取干扰可以更多地重叠(即,更频繁地发生)。随着被选择作为读取目标的存储单元变得离基底sub更远,第一读取干扰和第二读取干扰可能重叠较少(即,发生频率较低)。随着第一读取干扰和第二读取干扰更多地重叠,由于对存储块blka执行的单次读取操作而实际发生的第三读取干扰的高电平增加。随着第一读取干扰和第二读取干扰更少地重叠,由于对存储块blka执行的单次读取操作而实际发生的第三读取干扰的高电平降低。

基于上述特性,存储块blka的字线wl1至wl8可以被分类为第一字线组wlg1、第二字线组wlg2、第三字线组wlg3和第四字线组wlg4。例如,字线wl1至wl8可以根据与基底sub的距离分组。可以将第一读取权重w_1分配给与基底sub的距离最短的第一字线wl1和第二字线wl2。当对连接到第一字线wl1和第二字线wl2中的一个的存储单元执行读取操作时,读取计数可以增加第一读取权重w_1。

基于与基底sub的距离,可以将第二读取权重w_2分配给包括第三字线wl3和第四字线wl4的第二字线组wlg2。可以将第三读取权重w_3分配给包括第五字线wl5和第六字线wl6的第三字线组wlg3。可以将第四读取权重w_4分配给包括第七字线wl7和第八字线wl8的第四字线组wlg4。随着与基底sub的距离增加,存储单元的读取权重,换句话说,与对应于(或连接到)存储单元的字线组(或字线)相关联的读取权重可能降低。例如,第二读取权重w_2可以小于第一读取权重w_1,第三读取权重w_3可以小于第二读取权重w_2,并且第四读取权重w_4可以小于第三读取权重w_3。

如上所述,如果根据被选择作为读取目标的存储单元与基底sub之间的距离来调整读取权重,则可以提供具有改进的速度和可靠性的存储设备100。具体地,如果读取权重随着基底sub与选择的存储单元之间的距离增加而降低,则提供了具有改进的速度和可靠性的存储设备100。

图6示出存储单元mc的阈值电压和与其对应的数据比特的示例。在图6中,横坐标(x轴值)表示存储单元mc的阈值电压vth,而纵坐标(y轴值)表示存储单元mc的数量。在实施例中,图6中示出在每个存储单元mc中写入三个比特的示例。

参考图3、图4和图5,如果在每个存储单元mc中写入三个比特b1、b2和b3,则存储单元mc可以具有基于三个比特b1、b2和b3的八个可能的逻辑状态,也就是说,擦除状态e和第一编程状态p1至第七编程状态p7。例如,当存储单元mc中写入的比特b1、b2和b3为“111”时,存储单元mc可以对应于擦除状态e,并且可以被编程为具有低于第一电压v1的阈值电压。当存储单元mc中写入的比特b1、b2和b3为“011”时,存储单元mc可以对应于第一编程状态p1,并且可以被编程为具有第一电压v1和第二电压v2之间的阈值电压。当存储单元mc中写入的比特b1、b2和b3为“001”时,存储单元mc可以对应于第二编程状态p2,并且可以被编程为具有第二电压v2和第三电压v3之间的阈值电压。当存储单元mc中写入的比特b1、b2和b3为“000”时,存储单元mc可以对应于第三编程状态p3,并且可以被编程为具有在第三电压v3和第四电压v4之间的阈值电压。当存储单元mc中写入的比特b1、b2和b3为“010”时,存储单元mc可以对应于第四编程状态p4,并且可以被编程为具有第四电压v4和第五电压v5之间的阈值电压。当存储单元mc中写入的比特b1、b2和b3为“110”时,存储单元mc可以对应于第五编程状态p5,并且可以被编程为具有在第五电压v5和第六电压v6之间的阈值电压。当存储单元mc中写入的比特b1、b2和b3为“100”时,存储单元mc可以对应于第六编程状态p6,并且可以被编程为具有第六电压v6和第七电压v7之间的阈值电压。当存储单元mc中写入的比特b1、b2和b3为“101”时,存储单元mc可以对应于第七编程状态p7,并且可以被编程为具有大于第七电压v7的阈值电压。

在读取操作期间,可以通过使用第一电压v1至第七电压v7区分存储单元mc的阈值电压来确定写入存储单元mc的数据。

控制器120可以彼此独立地读取写入存储单元mc的比特b1、b2和b3。例如,在读取操作期间,控制器120可以从被选择作为读取目标的存储单元中选择性地读取包括第一比特b1的第一数据、包括第二比特b2的第二数据和包括第三比特b3的第三数据中的一个。

然而,如图6所示,对应于第一数据至第三数据的读取操作的读取计数可以彼此不同。例如,在读取包括第一比特b1的第一数据时,可以关于写入作为读取目标的存储单元中的第一比特b1是“1”还是“0”进行确定。如图6中粗线所示,非易失性存储器设备110可以通过使用第一电压v1和第五电压v5的读取操作,也就是说,通过执行读取操作两次来读取第一数据。当读取包括第二比特b2的第二数据时,非易失性存储器设备110可以通过使用第二电压v2、第四电压v4和第六电压v6的读取操作,也就是说,通过执行读取操作三次,来读取第二数据。当读取包括第三比特b3的第三数据时,非易失性存储器设备110可以通过使用第三电压v3和第七电压v7的读取操作,也就是说,通过执行读取操作两次,来读取第三数据。

随着为了读取第一数据、第二数据或第三数据而执行的读取操作次数(或者期间施加非选择读取电压的时间的总和)增加,在读取操作期间发生的读取干扰量增加。因此,在与选择的存储单元mc中写入的第一数据至第三数据的读取操作相关联的读取计数彼此不同的情况下,可以根据是否任何数据是读取目标来另外调整读取权重。

在图6中,逻辑状态和对应于其的比特值是示例性的,并且本公开的实施例可以不限于此。

图7示出根据基底sub和选择的存储单元之间的距离以及写入选择的存储单元中的数据的目标数据的位置来分配读取权重的示例。参考图3、图4和图7,可以将第一读取权重w_1至第七读取权重w_7分配给存储块blka的存储单元。第一读取权重w_1至第七读取权重w_7可以具有顺序减小的值。第一读取权重w_1的值可以具有最大值,而第七读取权重w_7可以具有最小值。

如参考如图5所述,指示读取干扰的读取权重可以随着(被选择作为读取目标的)存储单元和基底sub之间的距离增加而降低。例如,关于包括第一比特b1的第一数据的读取操作,随着选择的存储单元和基底sub之间的距离增加,读取权重可以按照第三权重w_3、第五权重w_5、第六权重w_6和第七权重w_7的顺序降低。对于包括第二比特b2的第二数据的读取操作,随着选择的存储单元和基底sub之间的距离增加,读取权重可以按照第一权重w_1、第二权重w_2、第四权重w_4和第六权重w_6的顺序降低。对于包括第三比特b3的第三数据的读取操作,随着选择的存储单元和基底sub之间的距离增加,读取权重可以按照第三权重w_3、第五权重w_5、第六权重w_6和第七权重w_7的顺序降低。

如参考图6所述,读取权重可以随着执行读取操作的次数(即,读取第一数据、第二数据或第三数据)增加而增加。例如,在属于第一字线组wlg1的存储单元中,在伴随两个读取操作读取第一数据或第三数据时,第三读取权重w_3可以被添加到读取计数,以及在伴随三个读取操作读取第二数据时,第一读取权重w_1可以被添加到读取计数。在属于第二字线组wlg2的存储单元中,在伴随两个读取操作读取第一数据或第三数据时,第五读取权重w_5可以被添加到读取计数,以及在伴随三个读取操作读取第二数据时,第二读取权重w_2可以被添加到读取计数。在属于第三字线组wlg3的存储单元中,在伴随两个读取操作读取第一数据或第三数据时,第六读取权重w_6可以被添加到读取计数,以及在伴随三个读取操作读取第二数据时,第四读取权重w_4可以被添加到读取计数。在属于第四字线组wlg4的存储单元中,在伴随两个读取操作读取第一数据或第三数据时第七读取权重w_7可以被添加到读取计数,以及在伴随三个读取操作读取第二数据时,第六读取权重w_6可以被添加到读取计数。

如上所述,通过考虑从写入选择的存储单元中的数据中选择的数据的位置以及选择的存储单元和基底sub之间的距离——也就是说,选择的存储单元(或选择的字线)的位置——来计算读取权重,可以进一步改进存储设备100的可靠性和速度。值得注意的是,(例如,在存储单元内)数据的位置因此具有与存储单元的位置不同的语境和含义。

在读取操作中,根据写入存储单元mc中的数据(或数据的位置)执行的读取操作的数量不限于图6和图7所示的示例性数字。

在实施例中,关于将对在读取操作中写入存储单元mc的数据(或数据的位置)执行的读取操作的数量的信息(即或例如,“读取计数信息”)(或对应于读取计数信息的读取权重)可以在存储设备100的制造时作为非易失性信息预先存储在控制器120中。作为另一示例,用于读取计数信息的参数(或对应于读取计数信息的读取权重)可以在存储设备100的制造时作为非易失性信息预先存储在非易失性存储器设备110中。当向存储设备100供电时,非易失性存储器设备110可以将存储的信息提供给控制器120。

图8示出额外地考虑到存储块blka的串选择线ssl1至ssl4所分配的读取权重的示例。参考图3、图4、图7和图8,可以根据作为读取目标选择的存储单元来设置第一读取权重w_1至第九读取权重w_9。第一读取权重w_1至第九读取权重w_9可以具有顺序减小的值。

当对与第一串选择线ssl1相对应的存储单元执行读取操作时,可以与参考图7所描述相同地设置读取权重。

当对属于第一字线组wlg1至第三字线组wlg3的存储单元执行读取操作时,对应于第一串选择线ssl1的存储单元的读取权重与对应于第二串选择线ssl2的存储单元的读取权重相同。然而,当对属于第四字线组wlg4的存储单元执行读取操作时,对应于第二串选择线ssl2的存储单元的读取权重小于对应于第一串选择线ssl1的存储单元的读取权重。

当对属于第一字线组wlg1至第二字线组wlg2的存储单元执行读取操作时,对应于第一串选择线ssl1的存储单元的读取权重与对应于第三串选择线ssl3或第四串选择线ssl4的存储单元的读取权重相同。然而,当对属于第三字线组wlg3和第四字线组wlg4的存储单元执行读取操作时,对应于第三串选择线ssl3或第四串选择线ssl4的存储单元的读取权重小于对应于第一串选择线ssl1的存储单元的读取权重。

如参考图8所述,如果读取权重根据与对应于选择的存储单元的串选择线(或串选择线的位置)而变化,则可以进一步改进存储设备100的可靠性和速度。

如果发生读取干扰,则可以从存储单元mc的电荷俘获层对电荷放电,或者可以将电荷俘获在存储单元mc的电荷俘获层中。也就是说,电荷在存储单元mc的电荷俘获层中移动。如果电荷移动,则在电荷俘获层的电荷稳定之前需要稳定时间。如果在存储单元mc发生读取干扰之后经过稳定时间之前进一步执行读取操作,则可能另外发生读取干扰。如果在存储单元mc中俘获的电荷稳定之前另外发生读取干扰,则读取干扰的影响可能越来越多。因此,执行读取操作(或发生读取干扰)的间隔,换句话说,执行读取操作的次数可能会影响读取干扰的总和,并且这可以用于计算读取权重。

图9是示出根据执行读取操作的次数来调整读取权重的示例的流程图。参考图1、图3和图9,在操作s210中,控制器120确定在第一预定临界时间段tcr1内是否对同一存储块blka执行读取操作。例如,控制器120可以确定当前对存储块blka执行的读取操作与先前在其上执行的读取操作之间的时间间隔是否在第一预定临界时间段tcr1内。如果时间间隔大于第一预定临界时间tcr1(s210=否),则读取权重可能不被另外调整。如果时间间隔在第一预定临界时间段tcr1内(s210=是),则可以确定在存储块blka中,在先前读取操作的第二读取干扰发生之后、在存储单元mc的电荷稳定之前,由于当前读取操作而另外发生第二读取干扰。因此,在操作s220中,可以将第一迭代权重添加到读取权重,因此读取权重可以增加。

在操作s230中,控制器120确定在第二临界时间段tcr2内是否对同一字线执行读取操作。例如,控制器120可以确定对存储块blka当前执行的和先前执行的读取操作是否与存储块blka的同一字线相关联,并且可以确定读取操作之间的时间间隔是否在第二临界时间段tcr2内。如果时间间隔不小于第二临界时间段tcr2(s230=否),则读取权重可能不被另外调整。如果时间间隔在第二临界时间段tcr2内(s230=是),则可以确定在存储块blka中,在先前读取操作的第一读取干扰发生之后、在存储单元mc的电荷稳定之前,由于当前读取操作而另外发生第一读取干扰。因此,在操作s240中,第二迭代权重可以被添加到读取权重,因此读取权重可以增加。

在实施例中,迭代权重可以针对每个部分进行再划分(subdivide)。例如,控制器120可以对连续或顺序添加第一次迭代权重(或第二迭代权重)的次数进行计数,并且可以随着计数增加而增加第一迭代权重(或第二迭代权重)。此外,如果在每个存储块中在预定时间段期间没有添加第一迭代权重(或第二迭代权重),则控制器120可以重置第一迭代权重(或第二迭代权重)。

在实施例中,控制器120可以将第一临界时间段(或第二临界时间段)再划分为多个部分。控制器120可以基于先前的读取操作和当前的读取操作之间的时间间隔是否属于第一临界时间段(或第二临界时间段)中的任何部分来可变地选择第一迭代权重(或第二迭代权重)。例如,第一迭代权重(或第二迭代权重)可以随着时间间隔的减小而增加。

随着执行读取操作时的温度变低,并且随着执行读取操作时的温度与数据写入被选择作为读取目标的存储单元时的温度之间的差变大,读取干扰可能变大。因此,可以通过应用与读取操作相关联的温度来进一步调整读取权重。

图10是示出进一步基于与读取操作相关联的温度来调整读取权重的示例的流程图。参考图1、图3和图10,在操作s310中,控制器120确定执行读取操作时的温度temp是否低于临界温度tpcr。如果温度temp低于临界温度tpcr(s310=是),则在操作s320中,控制器120可以通过向读取权重添加第一温度权重来增加读取权重。例如,临界温度tpcr可以是-10摄氏度。

在操作s330中,控制器120确定当执行读取操作时的温度和数据写入被选择作为读取目标的存储单元中时的温度之间的温度差temp_d是否高于临界温度差tdcr。如果温度差temp_d高于临界温度差tdcr(s330=是),则在操作s340中,控制器120可以通过向读取权重添加第二温度权重来增加读取权重。

在实施例中,如参考图9所述,第一温度权重或第二温度权重可以根据临界温度tpcr或临界温度差tdcr的部分被再划分。

如上所述,根据本公开的实施例的存储设备100可以考虑到为读取操作选择的存储单元、待读取数据、执行读取操作的次数以及与读取操作相关联的环境(例如,温度)参数来估计在读取操作中发生的实际读取干扰。存储设备100可以将估计结果应用于读取权重,并且可以基于读取权重来增加读取计数。读取计数用作确定是否执行刷新操作的标准。因此,由于基于在执行读取操作时发生的实际读取干扰来执行刷新操作,因此可以改进存储设备100的可靠性和速度。

图11是示出根据本公开的实施例的控制器120的框图。参考图1和图11,控制器120包括总线121、处理器122、ram123、ecc块124、主机接口125、缓冲器控制电路126和存储器接口127。

总线121可以被配置为在控制器120的组件之间提供通道。

处理器122可以控制控制器120的总体操作并且可以执行逻辑运算。处理器122可以通过主机接口125与外部主机设备通信,可以通过存储器接口127与非易失性存储器设备110通信,并且可以通过缓冲器控制电路126与ram130通信。处理器122可以使用ram123作为工作存储器、高速缓冲存储器或缓冲存储器来控制存储设备100。

闪存转换层ftl、权重模块wm和计数器cnt中的至少一个可以以由处理器122驱动的软件(诸如固件、操作系统和应用)的形式来实现。作为另一示例,闪存转换层ftl、权重模块wm和计数器cnt中的至少一个可以用处理器122内部的硬件(诸如电路或集成电路)来实现。可选地,闪存转换层ftl、权重模块wm和计数器cnt中的至少一个可以以与处理器122相结合的硬件和软件的组合的形式来实现。可选地,闪存转换层ftl、权重模块wm和计数器cnt中的至少一个可以用与处理器122分离的模块来实现。

ram123可以用作处理器122的工作存储器、高速缓冲存储器或缓冲存储器。ram123可以存储处理器122将执行的代码或命令。ram123可以存储由处理器122处理的数据。ram123可以包括静态ram(sram)。

ecc块124可以执行纠错操作。ecc块124可以基于通过存储器接口127将被写入非易失性存储器设备110的数据来执行纠错编码。纠错编码数据可以通过存储器接口127提供给非易失性存储器设备110。ecc块124可以对从非易失性存储器设备110通过存储器接口127接收的数据执行纠错解码。在实施例中,ecc块124可以作为存储器接口127的组件包括在存储器接口127中。

主机接口125可以被配置为在处理器122的控制下与外部主机设备通信。主机接口125可以使用各种通信方式中的至少一种传送通信,诸如通用串行总线(usb)、串行at附件(sata)、串行附接scsi(sas)、高速芯片(hsic)、小型计算机系统接口(scsi)、外围组件互连(pci)、快速pci(pcie)、快速非易失性存储器(nvme)、通用闪存存储(ufs)、安全数字(sd)、多媒体卡(mmc)、嵌入式mmc(emmc)、双列直插式存储器模块(dimm)、注册dimm(rdimm)和减载dimm(lrdimm)。

缓冲器控制电路126可以在处理器122的控制下控制ram123。

响应于处理器122的控制,存储器接口127可以与非易失性存储器设备110进行通信。如参考图1所述,存储器接口127可以通过输入/输出通道将命令、地址和数据传送到非易失性存储器设备110。存储器接口127可以通过控制信道将控制信号传送到非易失性存储器设备110。

在实施例中,在存储设备100不包括ram130的情况下,控制器120可以不包括缓冲器控制电路126。

在实施例中,处理器122可以通过使用代码来控制控制器120。处理器122可以从在控制器120的内部实现的非易失性存储器设备(例如,只读存储器)加载代码。可选地,处理器122可以通过存储器接口127从非易失性存储器设备110加载代码。

在实施例中,控制器120的总线121可以被划分为控制总线和数据总线。在实施例中,数据总线可以在控制器120中传送数据,而控制总线可以在控制器120中传送以下控制信息:命令和地址。数据总线和控制总线可以彼此独立以防止相互干扰或影响。数据总线可以与ecc块124、主机接口125,缓冲器控制电路126和存储器接口127连接。控制总线可以与处理器122、ram123、主机接口125、缓冲器控制电路126和存储器接口127连接。

根据本公开的实施例的存储设备可以基于读取目标的存储单元的位置来增加读取计数,并且可以基于读取计数来执行刷新操作。可以通过刷新操作补偿由读取操作引起的读取干扰,并且可以通过基于存储单元的位置改变读取计数来减少执行刷新操作的次数。因此,可以提供具有改进的速度和可靠性的存储设备。

虽然本公开描述了示例性实施例,但是对于本领域技术人员将明显的是,在不脱离本文所描述的概念的精神和范围的情况下,可以进行各种改变和修改。因此,应当理解,上述实施例不是限制性的,而是示例性的。

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