数据储存器件及其操作方法

xiaoxiao2021-2-23  199

数据储存器件及其操作方法
【专利说明】数据储存器件及其操作方法
[0001]相关申请的交叉引用
[0002]本申请要求在2014年10月7日向韩国知识产权局提交的韩国专利申请10-2014-0134982的优先权,其整体内容通过引用合并于此。
技术领域
[0003]各种具体实施例总而而言涉及一种数据储存器件,尤其涉及一种如下的数据储存器件及其操作方法,其中可靠性维护操作被执行以防止由于非易失性存储设备的特定区域过度存取而使储存于邻近于非易失性存储设备的特定区域的相邻区域中的数据失真或丢失。
【背景技术】
[0004]半导体设备,具体而言半导体存储设备可以用于储存数据。存储设备一般可以分成非易失性和易失性存储设备。
[0005]非易失性存储设备即使无电源仍会保留所储存数据。非易失性存储设备包括闪存,如与非(NAND)和或非(NOR)快闪、铁电随机存取存储器(Ferroelectric randomaccess memory,FeRAM)、相变随机存取存储器(Phase change random access memory,PCRAM)、磁性随机存取存储器(Magnetic random access memory,MRAM)及电阻式随机存取存储器(Resistive random access memory, Re RAM)。
[0006]易失性存储设备无恒定电源即无法保留储存于其中的数据。易失性存储设备包括静态随机存取存储器(Static random access memory, SRAM)和动态随机存取存储器(Dynamic random access memory, DRAM)。易失性存储设备在需要相对较高处理速度
[0007]的数据处理统中可以用作缓冲存储器、高速缓存、工作存储器或其类似物。

【发明内容】

[0008]各种具体实施例涉及一种具有改良数据可靠性的数据储存器件。
[0009]在一具体实施例中,数据储存器件可以包括:非易失性存储设备,其适合存取对应于存取命令的目标区域;以及处理器,其适合基于第一散列函数计算对应于目标区域的第一散列值,并更新由第一散列值索引的存取计数。
[0010]在一具体实施例中,数据储存器件可以包括:非易失性存储设备,其包括对应于单一散列值的多个区域;以及处理器,其适合管理多个区域的共同存取计数,其中该存取计数由散列值索引。
[0011 ] 在一具体实施例中,一种用于操作数据储存器件的方法可以包括:响应于存取指令,存取对应于单一散列值的多个区域之中的目标区域;以及增大由散列值索引的存取计数。
【附图说明】
[0012]图1为例示根据一具体实施例的数据储存器件的示例性框图。
[0013]图2为例示图1所示非易失性存储设备的示例性框图。
[0014]图3a为例不图2所不页与字线之间关系的不意图。
[0015]图3b为例不图2所不页与字线之间关系的另一不意图。
[0016]图4为例示图1所示散列单元的操作方法的示意图。
[0017]图5为例示图1所示数据储存器件的操作方法的流程图。
[0018]图6为例示图1所示处理器的可靠性维护操作的方法的流程图。
[0019]图7为例示图1所示处理器的数据检查操作的方法的流程图。
[0020]图8和图9为例示图1所示处理器的可靠性维护操作的方法的示意图。
[0021]图10为例示根据一具体实施例的数据储存器件的框图。
[0022]图11为例示图10所示第一散列单元和第二散列单元的操作方法的示意图。
[0023]图12为例示图10所示处理器的可靠性维护操作的方法的示意图。
【具体实施方式】
[0024]在下文中,数据储存器件及其操作方法以下将会通过具体实施例的各种范例参照所附附图进行说明。
[0025]图1为例示根据一具体实施例的数据储存器件10的示例性框图。
[0026]数据储存器件10可以响应于来自外部器件的写入请求而储存外部器件(未显示)所提供的数据。此外,数据储存器件10可以响应于来自外部器件的读取请求而将所储存数据提供给外部器件。数据储存器件10可以配置为个人计算机存储卡国际协会(PersonalComputer Memory Card Internat1nal Associat1n,PCMCIA)卡、紧凑型快闪(Compactflash,CF)卡、智能媒体卡、存储棒、形式为MMC、eMMC、RS-MMC及MMC_micro的多媒体卡、形式为SD、mini_SD及micro-SD的安全数字卡、通用快闪储存器(Universal flash storage,UFS)或固态硬盘。
[0027]数据储存器件10可以包括控制器100和非易失性存储设备200。
[0028]控制器100可以包括处理器110、存储器120及错误校正码(error correct1ncode,ECC)单元 130。
[0029]处理器110可以控制数据储存器件10的总体操作。处理器110可以产生用于存取非易失性存储设备200的目标区域的存取命令,例如,写入命令或读取命令,并可以将所产生的存取命令提供给非易失性存储设备200。处理器110可以驱动存储器120上的用于控制数据储存器件10的操作的软件程序。
[0030]处理器110可以执行可靠性维护操作。可靠性维护操作可以执行以防止由于非易失性存储设备200的特定区域过度存取而使储存于邻近于非易失性存储设备200的特定区域的相邻区域中的数据失真或丢失。可靠性维护操作可以基于存取计数表125通过数据检查操作来执行。处理器110可以执行可靠性维护操作,例如,每次通过读取命令对非易失性存储设备200进行存取时。
[0031]处理器110可以在存储器120上管理存取计数表125。存取计数表125可以包括存取计数的一个或多个值,其每个皆表示非易失性存储设备200的对应区域被存取多少次。每次对非易失性存储设备200的目标区域进行存取时,处理器110皆可以计算对应于非易失性存储设备200的目标区域的散列(hash)值HV,并可以在存取计数表125中更新由所计算散列值HV索引的存取计数。
[0032]处理器110可以包括散列单元115。散列单元115可以基于目标区域的地址ADD_T计算对应于该目标区域的散列值HV。散列单元115可以基于散列函数(hash funct1n)将该目标区域的地址ADD_T散列为散列值HV。例如,散列单元115可以实现为硬件,如数字电路、模拟电路或数字和模拟电路的组合。在其他范例中,散列单元115可以实现为软件,如固件,或者散列单元115可以实现为硬件和软件的组合。
[0033]为有效使用存储器120的容量,处理器110可以通过共同存取计数的单一值以综合方式管理非易失性存储设备200的多个区域的存取计数。处理器110可以在对综合管理下的多个区域中的任一个进行存取时更新共同存取计数的所述单一值。亦即,对在综合管理下的多个区域的共同存取计数可以为多个区域的所述存取计数的总和。
[0034]处理器110可以通过共同散列值以综合方式管理多个区域。散列单元115可以基于散列函数将在综合管理下的多个区域的所述地址散列到共同散列值。对多个区域的共同存取计数可以由共同散列值索引。总的来说,在对综合管理下的多个区域中的任一个进行存取时,处理器110可以基于所存取区域的地址计算对应于多个区域的共同散列值,并可以更新由所计算共同散列值索引的共同存取计数。
[0035]在综合管理下的多个区域可以对应于不同字线。在综合管理下的多个区域可以为多个页。
[0036]在基于存取计数表125确定出非易失性存储设备200的特定区域过度存取的情况下,处理器110可以对该特定区域的相邻区域执行数据检查操作。数据检查操作可以通过如下操作来被执行:核查储存于该相邻区域中的数据的失真程度、并根据数据的失真程度而选择性执行用于将储存于相邻区域中的数据还原成失真前的状态复原(reclaim)操作。
[0037]存储器120可以用作工作存储器、缓冲存储器或高速缓存。存储器120可以储存软件程序或待由处理器110驱动的各种程序数据、缓冲待在外部器件与非易失性存储设备200之间传送的数据,或暂时性储存缓存数据。
[0038]存储器120可以储存由处理器110管理的存取计数表125。如上述,在处理器110通过共同存取计数以综合方式管理非易失性存储设备200的多个区域的多个存取计数的情况下,存储器120可以被有效使用。若处理器110未以综合方式管理多个区域的多个存取计数,而是管理多个区域的多个存取计数中的每一个,则多个区域的多个存取计数将会与区域数目成比例地占用存储器120。存取计数表125可以在非易失性存储设备200中备份。
[0039]ECC单元130可以将待写入非易失性存储设备200的数据进行ECC编码用于错误检测、以及对读取自非易失性存储设备200的数据的错误校正。例如,ECC单元130可以为待写入非易失性存储设备200的数据产生奇偶(parity)数据,并可以通过将所产生奇偶数据加入待写入数据来编码待 写入的该数据。
[0040]ECC单元130可以ECC解码自非易失性存储设备200读取的数据,亦即,可以针对所读取的数据执行错误检查和错误校正。例如,ECC单元130可以通过检查已发生于所读取数据中的错误,并通过包括于所读取数据中的奇偶数据校正所检测错误来执行ECC解码操作。
[0041]在数据检查操针对过度存取的特定区域的相邻区域执行时,ECC单元130可以核查读取自该相邻区域的数据的失真程度。例如,ECC单元130可以通过检测在读取自相邻区域的数据中已发生的错误来核查错误发生率。ECC单元130可以向处理器110报告自相邻区域读取的数据的错误发生率,以使处理器110可以确定是否有必要执行用于将储存于相邻区域中的数据还原成失真前的状态的复原操作。
[0042]非易失性存储设备200可以在控制器100的控制下储存数据。非易失性存储设备200可以存取对应于存取指令的目标区域。
[0043]图2为例示图1所示非易失性存储设备200的示例性框图。
[0044]非易失性存储设备200可以包括控制逻辑210、接口电路220、地址解码器230、数据输入/输出电路240及存储单元阵列250。
[0045]控制逻辑210可以控制非易失性存储设备200的总体操作。控制逻辑210可以响应于控制器100所提供的存取命令(例如,写入、读取或擦除命令存储单元)而控制对阵列250的写入、读取或擦除操作擦。
[0046]接口电路220可以与控制器100交换各种控制信号,包括存取命令和数据。接口电路220可以将所输入的各种控制信号和数据传送到非易失性存储设备200的内部单元。
[0047]地址解码器230可以解码包括于存取命令中的行地址和列地址。地址解码器230可以控制字线WL根据行地址的解码结果选择性驱动。地址解码器230可以控制数据输入/输出电路240根据列地址的解码结果来选择性驱动位线BL。
[0048]数据输入/输出电路240可以将自接口电路220传送的数据通过位线BL传送到存储单元阵列250。数据输入/输出电路240可以将读取自存储单元阵列250的数据通过位线BL传送到接口电路220。
[0049]存储单元阵列250可以包括多个存储单元(未显示),其分别设置于字线WL与位线BL彼此交叉的区域。存储单元可以根据储存于每个单元中的位计数进行分类。例如,存储单元可以分类成每个皆储存I位的单电平单元和每个皆储存至少2位的多电平单元。
[0050]存储单元阵列250可以包括根据操作单元划分的多个储存区域。例如,存储单元阵列250可以包括第一至第八页Pl至P8。虽然例示图2的存储单元阵列250包括8个页,但应注意包括于存储单元阵列250中的页数目未具体限制。
[0051]页可以为对存储单元阵列250执行写入操作或读取操作的单位。换言之,存储单元阵列250可以以页为单位执行存取。页可以分配具有对应地址,并可以根据地址执行存取。页可以通过驱动对应字线执行存取。
[0052]图3a为例示图2所示页Pl至P8与字线WLl至WL8之间对应关系的示意图。
[0053]参照图3a,单一字线可以对应于单一页。包括于存储单元阵列250中的相应的第一至第八页Pl至P8可以分别对应于第一至第八字线WLl至WL8。在I条字线对应于I个页时,电耦接于字线的存储单元可以为单电平单元。
[0054]如上述,在可靠性维护操作中,对应于目标区域的存取计数可以更新,且数据检查操作可以针对相邻区域执行。目标区域和相邻区域可以对应于彼此邻近的字线。在I条字线对应于I个页时,在目标区域为例如第三页P3的情况下,相邻区域可以为第二和第四页P2 和 P4。
[0055]图3b为例示图2所示页Pl至P8与字线WLl至WL8之间其他对应关系的示意图。
[0056]参照图3b,单一字线可以对应于两个页。包括于存储单元阵列250中的第一和第二页Pl和P2可以对应于第一字线WLl,第三和第四页P3和P4可以对应于第二字线WL2,第五和第六页P5和P6可以对应于第三字线WL3,且第七和第八页P7和P8可以对应于第四字线WL4。在I条字线对应于2个页时,电耦接于字线的存储单元可以为多电平单元。
[0057]如上述,在可靠性维护操作中,对应于目标区域的存取计数可以更新,且数据检查操作可以针对相邻区域执行。目标区域和相邻区域可以对应于邻近字线。在单一字线对应于2个页时,在目标区域为例如第三页P3的情况下,相邻区域可以为第一、第二、第五及第六页 P1、P2、P5&P6。
[0058]图4为例示图1所示散列单元115的操作方法以计算对应于由存取命令所存取的目标区域的散列值HV的示意图。参照图4,亦显示出由散列值HV索引的存取计数表125。
[0059]散列单元115可以计算对应于图2的第一至第八页Pl至P8的散列值HV。散列单元115可以基于散列函数将相应的第一至第八页Pl至P8的地址ADD散列到对应的散列值HV之一。例如,在由存取指令存取的目标区域为第一页Pl的情况下,散列单元115可以将第一页Pl的地址ADD_P1散列到共同散列值“2”。
[0060]如上述,处理器110可以以综合方式管理多个页的存取计数,且为此目的,散列单元115可以将多个页的地址散列到共同散列值。待散列到共同散列值的多个页可以由散列函数确定。
[0061]在对存取计数以综合方式管理的多个页中的任一个进行存取的情况下,散列单元115可以计算共同散列值中对应一个。所计算共同散列值可以为对多个页以综合方式管理的共同存取计数的索引值。
[0062]参照图4,散列单元115可以将例如第三和第八页P3和P8的地址ADD_P3和ADD_P8散列到共同散列值“I”。在第三和第八页P3和P8中的任一个被存取的情况下,散列单元115可以计算共同散列值“I”。此种散列将会使得处理器110通过将第三和第八页P3和P8的存取计数索引到共同散列值“I”来以综合方式管理它们。
[0063]虽然图4例示散列单元115将2个页的地址散列到共同散列值,但应注意待散列到共同散列值的页数目未具体限制。在具体实施例中,其以综合方式管理的存取计数的页数目未具体限制。
[0064]图5为例示图1所示数据储存器件10的操作方法的流程图。
[0065]在步骤SllO中,处理器110可以产生用于存取目标区域的存取命令。例如,处理器110可以产生用于从目标区域读取数据的读取命令。非易失性存储设备200将会响应于处理器110所提供的存取命令而存取目标区域。
[0066]在步骤S120中,处理器110可以执行可靠性维护操作。可靠性维护操作可以基于存取计数表125由数据检查操作执行。
[0067]处理器110可以在每次对非易失性存储设备200进行存取时执行可靠性维护操作。处理器110可以例如在每次通过读取命令存取非易失性存储设备200时执行可靠性维护操作。
[0068]图6为例示图1所示处理器110的可靠性维护操作的方法的流程图。用于图6所示的处理器I1的可靠性维护操作的方法可以对应于图5的步骤S120。假设处理器110已产生用于存取目标区域的存取命令。
[0069]在步骤S210中,散列单元115可以计算对应于目标区域的共同散列值。散列单元115可以基于散列函数将目标区域的地址散列到散列值中对应的一个散列值。
[0070]在步骤S220中,处理器110可以增大由所计算共同散列值索引的共同存取计数。
[0071]在步骤S230中,处理器110可以确定所更新的共同存取计数是否达到阈值。在确定出所更新的共同存取计数达到阈值(是)的情况下,程序可以进行到步骤S240。在确定出所更新的共同存取计数未达到阈值(否)的情况下,程序可以结束。亦即,在所更新的共同存取计数未达到阈值的情况下,由于暗示目标区域尚未过度存取,因此处理器110可以结束可靠性维护操作。
[0072]在步骤S240中,处理器110可以针对邻近于目标区域的相邻区域执行数据检查操作。数据检查操作可以通过如下操作来被执行:核查储存于相邻区域中的数据的失真程度、并根据数据的失真程度来选择性执行用于将储存于相邻区域中的数据还原成失真前的状态的复原操作。
[0073]在步骤S250中,处理器110可以减小由步骤S210中所计算出共同散列值索引的共同存取计数。由于储存于相邻区域中的数据通过步骤S240中的数据检查操作被检查,因此处理器110可以减小对应于目标区域的共同存取计数,以延迟对相邻区域的后续数据检查操作。
[0074]如上述,处理器110可以管理在包括目标区域的综合管理下的多个区域的共同存取计数。在此情况下,在步骤S220中所增大的共同存取计数亦可以通过在综合管理下存取多个区域之中的除目标区域以外的区域而增大。即使共同存取计数通过对目标区域的存取达到阈值,但此种结果甚至可以通过在综合管理下对除目标区域以外的其他区域过度存取而导致。因此,由于处理器110未完全重置对应于目标区域的共同存取计数,而是将共同存取计数减小到预定值,因此在综合管理下对多个区域之中除目标区域以外的区域的过度存取的机率可以维持到一定程度。
[0075]图7为例示图1所示处理器110的数据检查操作的方 法的流程图。图7所示处理器110的数据检查操作的方法可以对应于图6的步骤S240。
[0076]在步骤S310中,处理器110可以读取储存于邻近于目标区域的相邻区域中的数据。
[0077]在步骤S320中,ECC单元130可以核查读取自相邻区域的数据的错误发生率。ECC单元130可以向处理器110报告错误发生率,以使处理器110可以确定是否有必要为相邻区域执行复原操作。
[0078]在步骤S330中,处理器110可以基于读取自相邻区域的错误发生率来确定是否有必要为相邻区域执行复原操作。例如,处理器110可以将错误发生率与阈值比较,并确定在错误发生率超出阈值时有必要执行复原操作。在确定出有必要执行复原操作(是)的情况下,程序可以进行到步骤S340。在确定出不必执行复原操作(否)的情况下,程序可以结束。
[0079]在步骤S340中,处理器110可以针对相邻区域执行复原操作,以将储存于相邻区域中的数据还原成失真前的状态。例如,处理器110可以通过无用数据收集操作来执行复原操作。处理器110可以通过将储存于相邻区域中的数据恢复到另一区域中,将储存于相邻区域中的数据还原成失真前的状态。
[0080]图8和图9为例示图1所示处理器110的可靠性维护操作的方法的示意图。图8示出了在处理器110在图6所示步骤230中确定所更新的共同存取计数未达到阈值(否)时处理器110的可靠性维护操作的方法。图9显示在处理器110在图6所示步骤230中确定所更新的共同存取计数达到阈值(是)时处理器110的可靠性维护操作的方法。假设处理器110在每次通过读取命令存取非易失性存储设备200时执行可靠性维护操作以防止因目标区域施加于相邻区域上的读取干扰效应的数据失真或丢失。
[0081]在下文中,处理器110执行可靠性维护操作的方法将会参照图4、图6及图8详细进行说明。假设处理器110已为目标区域(例如,第二页P2)产生读取命令,并已读取第二页P20
[0082]散列单元115可以计算对应于第二页P2(①)的共同散列值HV。散列单元115可以根据图4所示计算方法基于散列函数而将第二页P2的地址ADD_P2散列到共同散列值“3”。
[0083]处理器110可以增大存储器120(②)上的存取计数表125中的由共同散列值“3”索引的共同存取计数。
[0084]处理器110可以确定所更新的共同存取计数是否达到阈值。在阈值设定为100的情况下,由于所更新的共同存取计数仍为76,因此处理器110可以确定其未达到阈值。处理器110可以结束可靠性维护操作。
[0085]接着,处理器110执行可靠性维护操作的另一方法将会参照图4、图6及图9详细进行说明。假设处理器110已为目标区域(例如,第三页P3)产生读取命令,并已读取第三页P30
[0086]散列单元115可以计算对应于第三页P3(①)的共同散列值HV。散列单元115可以根据图4所示计算方法基于散列函数而将第三页P3的地址ADD_P3散列到共同散列值“I”。
[0087]处理器110可以增大存储器120(②)上的存取计数表125中的由共同散列值“I”索引的共同存取计数。
[0088]处理器110可以确定所更新的共同存取计数是否达到阈值。在阈值设定为100的情况下,由于所更新的共同存取计数为100,因此处理器110可以确定其已达到阈值。
[0089]处理器110可以针对相邻区域(③)执行数据检查操作。在单一字线对应于单一页时,如图3A所示,处理器110可以针对第二和第四页P2和P4执行数据检查操作。虽然未例示出,当单一字线对应于2个页时,处理器110可以针对是目标区域或第三页P3的相邻区域的第一、第二、第五及第六页PU P2、P5及P6执行数据检查操作。
[0090]针对相邻区域执行数据检查操作后,处理器110可以减小存取计数表125 (④)中的由共同散列值“I”索引的共同存取计数。由于储存于第二和第四页P2和P4中的数据通过数据检查操作来被检查,因此处理器110可以减小共同存取计数以延迟针对第二和第四页P2和P4的后续数据检查操作。然而,由于由共同散列值“I”索引的共同存取计数对应于在综合管理下的第三和第八页P3和P8两者,如图4所示,因此处理器110可以将由共同散列值“I”索引的共同存取计数减小到预定值,例如70。亦即,处理器110可以不完全重置由共同散列值“I”索引的共同存取计数,以维持在综合管理下对第八页P8而非第三页P3过度存取的某些机率。
[0091]图10为例示根据一具体实施例的数据储存器件20的框图。在图10中,与图1相同的附图标记大体上将会用于与上述参照图1的数据储存器件10相同的组件,并会省略对对应组件的详细说明。
[0092]数据储存器件20可以与参照图1数据储存器件10相同,而不同的处在于控制器300包括第一散列单元315和第二散列单元317。
[0093]处理器310可以管理存取计数表325。处理器310可以在每次通过存取命令存取非易失性存储设备200时计算对应于非易失性存储设备200的目标区域的多个共同散列值,例如,第一共同散列值HVl和第二共同散列值HV2,并可以更新存取计数表325中的分别由第一和第二共同散列值HVl和HV2索引的两个共同存取计数。
[0094]处理器310可以包括第一散列单元315和第二散列单元317。第一散列单元315和第二散列单元317每个皆可以与参照图1至图9的散列单元115相同。第一散列单元315和第二散列单元317可以分别计算对应于目标区域的不同共同散列值。第一散列单元315可以基于第一散列函数将目标区域的地址ADD_T散列到第一共同散列值HV1。第二散列单元317可以基于第二散列函数将目标区域的地址ADD_T散列到第二共同散列值HV2。
[0095]虽然图10显示处理器310包括2个散列单元,但应注意包括于处理器310中的散列单元数目未具体限制。根据一具体实施例,对应于目标区域的不同散列值可以通过包括于处理器310中的散列单元数目进行计算,且处理器310可以更新由所计算的散列值索引的所有存取计数。
[0096]图11为例示图10所示第一散列单元和第二散列单元315和317的操作方法以计算对应于由存取命令所存取的单一目标区域的不同散列值HV(即第一共同散列值HVl和第二共同散列值HV2)的示意图。参照图11,亦显示出由散列值HV索引的存取计数表325。
[0097]第一散列单元315和第二散列单元317可以计算对应于相应的第一至第八页Pl至P8的第一共同散列值HVl和第二共同散列值HV2。第一散列单元315可以基于第一散列函数将相应的第一至第八页Pl至P8的地址ADD散列到第一共同散列值HVl中对应的一个。第二散列单元317可以基于第二散列函数将相应的第一至第八页Pl至P8的地址ADD散列到第二共同散列值HV2中对应的一个。例如,在由存取命令存取的目标区域为第三页P3的情况下,第一散列单元315可以将第三页P3的地址ADD_P3散列到第一共同散列值“ 1”,且第二散列单元317可以将第三页P3的地址ADD_P3散列到第二共同散列值“3”。
[0098]假设处理器310通过第一散列单元315仅计算第一共同散列值HV1,则处理器310将会管理由第一共同散列值HVl索引的第一存取计数子表325_1。同样地,假设处理器310通过第二散列单元317仅计算第二共同散列值HV2,则处理器310将会管理由第二共同散列值HV2索引的第二存取计数子表325_2。由于处理器310通过第一散列单元315和第二散列单元317计算第一共同散列值HVl和第二共同散列值HV2,因此处理器310可以管理其中整合了第一存取计数子表325_1和第二存取计数子表325_2的存取计数表325。例如,第一存取计数子表325_1中的第一共同散列值“I”可以索引针对第三和第八页P3和P8两者的共同存取计数,且第二存取计数子表325_2中的第二共同散列值“ I ”可以索引针对第一和第五页Pl和P5两者的共同存取计数。因此,存取计数表325中的共同散列值“I”可以索引第一、第三、第五及第八页P1、P3、P5及P8四者。
[0099]图12为例示图10所示处理器310的可靠性维护操作的方法的示意图。假设处理器310在每次通过读取命令存取非易失性存储设备200时执行可靠性维护操作以防止因目标区域施加于相邻区域上的读取干扰效应的数据失真或丢失。
[0100]在下文中,处理器310执行可靠性维护操作的方法将会参照图10至图12详细进行说明。假设处理器310为目标区域(例如,第三页P3)产生读取命令,并读取第三页P3。
[0101]第一散列单元315和第二散列单元317可以分别计算对应于第三页P3 (①)的第一共同散列值HVl和第二共同散列值HV2。第一散列单元315可以根据图11所示计算方法基于第一散列函数将第三页P3的地址ADD_P3散列到第一共同散列值“I”。第二散列单元317可以根据图11所示计算方法基于第二散列函数将第三页P3的地址ADD_P3散列到第二共同散列值“3”。
[0102]处理器310可以增大存储器120上的存取计数表325中的由所计算第一共同散列值“I”从49至50索引的共同存取计数,并增大由所计算第二共同散 列值“3”从30至31(②)索引的共同存取计数。
[0103]处理器310可以确定所更新的共同存取计数中的一个或多个是否达到阈值。在阈值设定为50的情况下,处理器310可以确定由第一共同散列值“I”索引的共同存取计数已达到阈值。
[0104]处理器310可以针对相邻区域(③)执行数据检查操作。在单一页对应于单一字线时,处理器310可以针对第二和第四页P2和P4执行数据检查操作。虽然未例示出,在单一字线对应于2个页时,处理器310可以针对是目标区域或第三页P3的相邻区域的第一、第二、第五及第六页PU P2、P5及P6执行数据检查操作。
[0105]针对相邻区域执行数据检查操作后,处理器310可以减小存取计数表325 (④)中的由第一共同散列值“I”索引的共同存取计数。由于储存于第二和第四页P2和P4中的数据通过数据检查操作被检查,因此处理器310可以减小共同存取计数以延迟针对第二和第四页P2和P4的后续数据检查操作。然而,由于由第一共同散列值“I”索引的共同存取计数对应于在综合管理下的所有第一、第三、第五及第八页P1、P3、P5及P8,如图11所示,因此处理器310可以将由第一共同散列值“I”索引的共同存取计数减小到预设值,例如25。换言之,处理器310可以不完全重置由第一共同散列值“I”索引的共同存取计数,以在综合管理下维持对第一、第五及第八页P1、P5及P8而非第三页P3过度存取的某些机率。
[0106]上述参照图10至图12的数据储存器件20在下列情况下可以为有效。例如,假设在图12中第八页P8在第三页P3被存取前已过度存取。第八页P8可以通过第一散列单元315对应于第一共同散列值“1”,并通过第二散列单元317对应于第二共同散列值“4”。据此,在由第一共同散列值“I”和第二共同散列值“4”索引的存取计数表325中的共同存取计数可以增大而接近阈值,例如,分别为49和48。在这种状态下,由于对第三页P3的存取所造成的结果,存取计数表325中的由第一共同散列值“I”索引的共同存取计数可以达到阈值50,然后可以减小到25。然而,由于存取计数表325中的由第二共同散列值“4”索引的共同存取计数维持原样,因此针对第八页P8的相邻区域执行数据检查操作的机会可以在稍早时间点提供,因此,数据可靠性得以改良。
[0107]如从上述说明显而易见,根据具体实施例的数据储存器件可以提供改良的数据可靠性。
[0108]虽然上述已说明各种具体实施例,但本领域技术人员应可以理解具体实施例仅为范例。据此,于文中描述的数据储存器件及其操作方法不应基于所述的具体实施例加以限制。
[0109]通过以上实施例可以看出,本申请提供了以下的技术方案。
[0110]技术方案1.一种数据储存器件,包括:
[0111]非易失性存储设备,其适合存取对应于存取命令的目标区域;以及
[0112]处理器,其适合基于第一散列函数来计算对应于所述目标区域的第一散列值,并更新由所述第一散列值索引的存取计数。
[0113]技术方案2.如技术方案I所述的数据储存器件,其中所述处理器基于所述目标区域的地址来计算所述第一散列值。
[0114]技术方案3.如技术方案I所述的数据储存器件,
[0115]其中所述第一散列值共同对应于所述非易失性存储设备的多个区域,且
[0116]其中所述处理器在存取所述多个区域中的任一个时更新由所述第一散列值索引的存取计数。
[0117]技术方案4.如技术方案3所述的数据储存器件,其中所述多个区域对应于不同字线。
[0118]技术方案5.如技术方案I所述的数据储存器件,其中所述处理器通过增大所述存取计数来更新所述存取计数。
[0119]技术方案6.如技术方案5所述的数据储存器件,其中,所述处理器将所更新的存取计数与阈值比较,并根据所述比较而针对邻近于所述目标区域的一个或多个相邻区域执行数据检查操作。
[0120]技术方案7.如技术方案6所述的数据储存器件,其中,所述处理器在针对所述相邻区域执行所述数据检查操作后减小增大的存取计数。
[0121]技术方案8.如技术方案I所述的数据储存器件,其中,所述处理器基于第二散列函数来计算对应于所述目标区域的第二散列值,并更新由所述第二散列值索引的存取计数。
[0122]技术方案9.一种数据储存器件,包括:
[0123]非易失性存储设备,其包括对应于单一散列值的多个区域;以及
[0124]处理器,其适合管理所述多个区域的共同存取计数,
[0125]其中所述存取计数由所述散列值索引。
[0126]技术方案10.如技术方案9所述的数据储存器件,其中所述多个区域对应于不同字线。
[0127]技术方案11.如技术方案9所述的数据储存器件,其中,所述处理器包括散列单元,所述散列单元适合基于所述多个区域中的一个区域的地址来计算所述散列值。
[0128]技术方案12.如技术方案9所述的数据储存器件,其中所述处理器在存取目标区域时增大所述存取计数,所述目标区域是所述多个区域中之一。
[0129]技术方案13.如技术方案12所述的数据储存器件,其中,所述处理器将增大的存取计数与阈值进行比较,并根据所述比较而针对邻近于所述目标区域的一个或多个相邻区域执行数据检查操作。
[0130]技术方案14.如技术方案13所述的数据储存器件,其中,所述处理器在针对所述相邻区域执行所述数据检查操作后减小所述增大的存取计数。
[0131]技术方案15.—种用于操作数据储存器件的方法,包括:
[0132]响应于存取命令,存取对应于单一散列值的多个区域之中的目标区域;以及
[0133]增大由所述散列值索引的存取计数。
[0134]技术方案16.如技术方案15所述的方法,其中所述多个区域对应于不同字线。
[0135]技术方案17.如技术方案15所述的方法,还包括:
[0136]基于所述目标区域的地址来计算所述散列值。
[0137]技术方案18.如技术方案15所述的方法,还包括:
[0138]将增大的存取计数与阈值进行比较;以及
[0139]根据所述比较而针对邻近于所述目标区域的一个或多个相邻区域执行数据检查操作。
[0140]技术方案19.如技术方案18所述的方法,其中针对所述相邻区域执行数据检查操作的步骤包括:
[0141]读取储存于所述相邻区域中的数据;
[0142]核查从所述相邻区域读取的数据的错误发生率;以及
[0143]根据所述错误发生率而选择性执行用于还原储存于所述相邻区域中的数据的复原操作。
[0144]技术方案20.如技术方案18所述的方法,还包括在执行所述数据检查操作后减小所述增大的存取计数。
【主权项】
1.一种数据储存器件,包括: 非易失性存储设备,其适合存取对应于存取命令的目标区域;以及 处理器,其适合基于第一散列函数来计算对应于所述目标区域的第一散列值,并更新由所述第一散列值索引的存取计数。2.如权利要求1所述的数据储存器件,其中所述处理器基于所述目标区域的地址来计算所述第一散列值。3.如权利要求1所述的数据储存器件, 其中所述第一散列值共同对应于所述非易失性存储设备的多个区域,且 其中所述处理器在存取所述多个区域中的任一个时更新由所述第一散列值索引的存取计数。4.如权利要求3所述的数据储存器件,其中所述多个区域对应于不同字线。5.如权利要求1所述的数据储存器件,其中所述处理器通过增大所述存取计数来更新所述存取计数。6.如权利要求5所述的数据储存器件,其中,所述处理器将所更新的存取计数与阈值比较,并根据所述比较而针对邻近于所述目标区域的一个或多个相邻区域执行数据检查操作。7.如权利要求6所述的数据储存器件,其中,所述处理器在针对所述相邻区域执行所述数据检查操作后减小增大的存取计数。8.如权利要求1所述的数据储存器件,其中,所述处理器基于第二散列函数来计算对应于所述目标区域的第二散列值,并更新由所述第二散列值索引的存取计数。9.一种数据储存器件,包括: 非易失性存储设备,其包括对应于单一散列值的多个区域;以及 处理器,其适合管理所述多个区域的共同存取计数, 其中所述存取计数由所述散列值索引。10.一种用于操作数据储存器件的方法,包括: 响应于存取命令,存取对应于单一散列值的多个区域之中的目标区域;以及 增大由所述散列值索引的存取计数。
【专利摘要】本发明提供一种数据储存器件,包括非易失性存储设备,其适合存取对应于存取命令的目标区域,以及处理器,其适合基于第一散列函数来计算对应于目标区域的第一散列值,并更新由第一散列值索引的存取计数。
【IPC分类】G11C16/06, G11C29/42, G06F12/02
【公开号】CN105489242
【申请号】CN201510347610
【发明人】金世玹, 杨中燮, 金仪珍, 李宗珉
【申请人】爱思开海力士有限公司
【公开日】2016年4月13日
【申请日】2015年6月19日
【公告号】US20160098214

最新回复(0)