纠错码中的故障字线和故障位线信息的制作方法

文档序号:17120117发布日期:2019-03-15 23:43阅读:250来源:国知局
纠错码中的故障字线和故障位线信息的制作方法

本公开涉及纠错码,尤其涉及纠错码中的故障字线和故障位线信息。



背景技术:

存储器设备可以包括经由多个字线(wl)和多个位线(bl)存取的多个存储器单元。每个wl和每个bl与多个存储器单元相关联。因此,故障wl和/或故障bl可能导致多个存储器读取错误,并且因此可能不利地影响存储器设备的原始比特误码率(rber)。

附图说明

从下面对与所要求保护的主题一致的实施例的详细描述中,所要求保护的主题的特征和优点将是显而易见的,该描述应该参考附图来考虑,其中:

图1a示出了包括与本公开的若干实施例一致的存储器设备和缺陷图电路的系统的功能框图;

图1b示出了对应于图1a的存储器设备的任何瓦片的示例瓦片;

图2a和图2b是根据本公开的各种实施例的缺陷图操作的流程图;以及

图3是根据本公开的各种实施例的纠错操作的流程图。

尽管以下具体实施方式将参考说明性实施例进行,但是其许多替换、修改和变化对于本领域技术人员将是显而易见的。

具体实施方式

纠错电路可以被配置为将具有多个奇偶校验位的数据位(要存储的信息)编码成码字。奇偶校验位被配置为便于对码字解码以在存在一个或多个位错误的情况下恢复数据位。编码可以符合和/或与所选择的纠错码兼容。然后可以将码字存储在存储器设备中。码字的多个位可以分布在存储器设备上。换句话说,包括在码字中的多个位可以不共享字线(wl)或位线(bl)。

响应于读请求,可以从存储器设备取回取回码字。然后,纠错电路可以被配置为对码字进行解码以恢复数据位。由于存储器设备的非理想特性,所取回的码字可包括一个或多个错误位。例如,故障wl和/或故障bl可能导致分布在多个码字上的多个位错误(“故障位”)。因此,解码可以包括一个或多个错误位的检测和/或校正。

通常,本公开涉及纠错码中的故障wl和故障bl信息。装置、方法和/或系统可以被配置为识别故障wl和/或故障bl并且在缺陷图中包括故障wl标识符和/或故障bl标识符。然后,该装置、方法和/或系统可以被配置为利用缺陷图来通知纠错电路码字中的哪些位(如果有的话)是故障位。故障位可以是与故障wl和/或故障bl相关联的位。然后,纠错电路可以被配置为利用该故障位信息来配置解码操作。解码操作的配置可以与所选择的纠错码相关,如下面将更详细描述的。在一个示例中,可以擦除故障位,从而减少与解码操作相关联的延迟。在另一示例中,纠错电路可以被配置为执行多次解码尝试。解码尝试的次数可能与码字中的故障位的数量有关。尝试次数可以对应于故障位的所有可能值组合的至少一部分。

因此,可以利用包括与故障wl和/或故障bl相对应的标识符的缺陷图来促进码字解码和纠错操作。擦除故障位可以改善可以适应擦除的纠错码的延迟。识别故障位可以通过促进对不能适应擦除的纠错码的解码来降低原始比特误码率(rber)。

图1a示出了与本公开的若干实施例一致的包括缺陷图电路的系统100的功能框图。系统100可以对应于和/或包括在移动电话中,包括但不限于智能电话(例如,基于的电话、基于的电话、基于的电话等);可穿戴设备(例如,可穿戴计算机、“智能”手表、智能眼镜、智能服装等)和/或系统;计算系统(例如,服务器、工作站计算机、台式计算机、膝上型计算机、平板计算机(例如,等)、超便携式计算机、超移动计算机、上网本计算机和/或子笔记本计算机;等等。

系统100包括处理器电路102、存储器控制器104和存储器设备106。例如,处理器电路102可以对应于单核或多核通用处理器,例如由公司提供的那些,等等。存储器控制器104可以耦合到和/或包括在处理器电路102中,并且可以被配置为将处理器电路102耦合到存储器设备106。

存储器设备106可以包括非易失性存储器,例如,不需要电力来维持存储介质存储的数据状态的存储介质。非易失性存储器可以包括但不限于nand闪存(例如,三级单元(tlc)nand或任何其他类型的nand(例如,单级单元(slc)、多级单元(mlc)、四级单元(qlc)等))、nor存储器、固态存储器(例如,平面或三维(3d)nand闪存或nor闪存)、使用硫族化物相变材料(例如,硫属化物玻璃)的存储设备、字节可寻址非易失性存储器设备、铁电存储器、氧化硅-氮化物-氧化物-硅(sonos)存储器、聚合物存储器(例如,铁电聚合物存储器)、字节可寻址的随机可存取3d交叉点存储器、铁电晶体管随机存取存储器(fe-tram)、磁阻随机存取存储器(mram)、相变存储器(pcm、pram)、电阻存储器、铁电存储器(f-ram、feram)、自旋转移矩存储器(stt)、热辅助开关存储器(tas)、千足虫存储器、浮动结栅极存储器(fjgram)、磁隧道结(mtj)存储器、电化学电池(ecm)存储器、二元氧化物细丝单元存储器、界面切换存储器、电池支持的ram、双向存储器、纳米线存储器、电可擦除可编程只读存储器(eeprom)等。在一些实施例中,字节可寻址的随机可存取3d交叉点存储器可以包括无晶体管可堆叠交叉点架构,其中存储器单元位于字线和位线的交叉处并且可单独寻址,并且其中位存储基于体电阻的变化。

处理器电路102可以被配置为向存储器控制器104提供存储器存取请求,例如写请求和/或读请求。例如,读请求可以包括要从存储器设备106中对应于地址信息的存储器位置读取的数据的地址信息。然后,存储器控制器104可以被配置为管理从存储器设备106读取数据。

存储器控制器104包括存储器控制器控制电路110、纠错电路112、缺陷图电路114和存储器设备图116。存储器控制器控制电路110被配置为响应于来自处理器电路102的存储器存取请求确定目标存储器单元的地址。存储器控制器控制电路110还被配置为至少部分地基于所确定的地址并且至少部分地基于存储器设备图116来识别与目标存储器单元的地址相对应的wl和bl。存储器设备图116被配置为将存储器单元地址与wl标识符和bl标识符相关联。因此,存储器设备图116可以包括地址阵列,其中每个地址与对应于与地址相关联的存储器单元的相应的wl标识符和相应的bl标识符相关联。存储器控制器控制电路110还被配置为选择目标存储器单元并写入所选择的目标存储器单元或从所选择的目标存储器单元读取。选择、写入和/或读取可以包括驱动所识别的wl和/或识别的bl以适应存储器存取操作。

存储器控制器控制电路110被配置为例如响应于写请求而从处理器电路102接收要写入存储器设备106的数据。然后,存储器控制器控制电路110可以被配置为向纠错电路112提供要写入的数据。纠错电路112可以被配置为使用纠错码对要写入的数据进行编码以生成相对应的码字。因此,码字可以包括多个数据位和多个纠错位。数据位对应于信息位,而纠错位对应于奇偶校验位。在一个实施例中,纠错码可以符合低密度奇偶校验(ldpc)纠错码和/或与低密度奇偶校验(ldpc)纠错码兼容。在另一个实施例中,纠错码可以符合里德-所罗门纠错码和/或与里德-所罗门纠错码兼容。在另一个实施例中,纠错码可以符合bose-chaudhuri-hocquenghem(bch)纠错码和/或与bose-chaudhuri-hocquenghem(bch)纠错码兼容。

存储器控制器控制电路110然后可以被配置为将相对应的码字存储在存储器设备106中。存储器控制器控制电路110可以被配置为响应于读请求而读取码字并且将接收的码字提供给纠错电路112。然后,校正电路112可以被配置为对接收的码字进行解码。

存储器设备106包括多个管芯,d1,...,dn。每个管芯(例如d1)包括多个分区p1,...,pq。每个分区(例如分区p1)包括多个切片s1,...,sn。每个切片(例如,切片s1)包括多个瓦片t1,...,tm。在一个非限制性示例中,每个管芯(例如,管芯d1)可以包括32个分区;每个分区(例如分区p1)可以包括四个切片;而每个切片(例如切片s1)可包括128个瓦片。值n、q和m可以是大于或等于1的整数。

图1b示出了对应于图1a的存储器设备106的任何瓦片t1,...,tm的示例瓦片150。示例瓦片150包括两个卡叠式(deck)对152-1、152-2。在其他示例中,瓦片可包括更多或更少的卡叠式对。每个卡叠式对(例如卡叠式对152-1)包括第一多个字线(wl)wl00,wl01,...,wl0n,第二多个字线wl10,wl11,...,wl1n,多个位线(bl)bl0,bl1,...,blm和多个存储器单元(例如,存储器单元156)。每个wl可以在存储器单元(例如,存储器单元156)处与bl交叉。例如,第一多个wlwl00,wl01,...,wl0n,多个blbl0,bl1,...,blm和对应的多个存储器单元可以对应于第一卡叠,并且第二多个wlwl10,wl11,...,wl1n,多个blbl0,bl1,...,blm和相对应的多个存储器单元可以对应于卡叠式对152-1的第二卡叠。因此,每个卡叠式152-1、152-2可以包括存储器单元阵列,并且存储器设备106可以包括多个卡叠。在一个非限制性示例中,每个瓦片(例如,瓦片150)可以在四个卡叠中包括4000个wl和2000个bl。

再次转向图1a,缺陷图电路114包括缺陷图逻辑120、缺陷图122、缺陷图电路存储器124和wl/bl位错误数据126。缺陷图逻辑120被配置为生成和/或更新缺陷图122,以将缺陷图信息提供给纠错电路112并更新wl/bl位错误数据126,这将在下面更详细地描述。缺陷图电路存储器124可以被配置为包含缺陷图122和/或wl/bl位错误数据126。缺陷图122被配置为包含已经被识别为故障的每个wl和/或每个bl的wl和/或bl标识符。wl/bl位错误数据126被配置为包含如下的位错误数据,然后可以由缺陷图逻辑120利用所述位错误数据来识别故障wl和/或故障bl。wl/bl位错误数据126可以被配置为存储具有小于阈值原始位错误率(rber)的rber的wl和/或bl的位错误数据。如果相应的rber增加到等于或大于阈值rber,使得相关联的wl和/或相关联的bl被识别为有故障,则可以删除相对应的位错误数据。

在操作中,响应于来自处理器电路102的读请求,存储器控制器控制电路110可以被配置为从存储器设备106读取码字。例如,存储器控制器控制电路110可以接收与要被读取的数据的地址相对应的地址信息。然后,存储器控制器控制电路110可以被配置为确定地址。然后,存储器控制器控制电路110可以被配置为利用存储器设备图116来识别与地址相关联的每个wl和每个bl。可以意识到,对应于一个码字的地址可以与多个位相关联。一个或多个位可以存储在多个存储器单元中的每一个中。然后,存储器单元可以分布在存储器设备106上。在一个示例中,存储器单元可以随机分布在存储器设备106上。在另一个示例中,每个存储器单元可以位于一个分区中多个瓦片的每个瓦片中的相同的相应位置中。本文同样考虑了用于存储的码字的存储器单元的其他分布。

然后,存储器控制器控制电路110可以被配置为将码字提供给纠错电路112。纠错电路112可以不知道存储器设备106中接收的码字的位的位置。然后,缺陷图逻辑120可以被配置为取回或接收码字的地址。地址可以由存储器控制器控制电路110提供或从其中取回。

然后,缺陷图逻辑120可以被配置为针对码字中的每个位识别相应的wl和相应的bl。例如,缺陷图逻辑120可以被配置为存取存储器设备图116并识别与该地址相关联的每个相应wl和相应bl。然后,缺陷图逻辑120可以被配置为确定任何识别的wl和/或任何识别的bl是否有故障。例如,缺陷图逻辑120可以被配置为访问缺陷图122以进行确定。

缺陷图122被配置为包含与故障wl相对应的wl标识符和/或与故障bl相对应的bl标识符。缺陷图逻辑120可以被配置为确定与任何识别的wl相对应的wl标识符和/或与任何识别的bl相对应的bl标识符是否包含在缺陷图122中。如果缺陷图122包含对应于识别的wl的wl标识符和/或对应于识别的bl的bl标识符,则缺陷图逻辑120可以被配置为通知纠错电路112。该通知被配置为包括与识别的故障wl和/或识别的故障bl相关联的码字的每个位(即“故障位”)的相应位标识符。因此,可以为纠错电路112提供包括在码字中的每个故障位的相应标识符。

如果向纠错电路112提供故障位的通知,则纠错电路112可以至少部分地基于所选择的纠错码来配置解码操作。换句话说,纠错电路112可以被配置为实现一个或多个纠错码。纠错码可以包括但不限于ldpc、里德-所罗门(里德-所罗门)、bch等。可以意识到,不同的纠错码可以具有不同的特性和/或不同的能力。例如,ldpc和/或里德-所罗门能够管理擦除。擦除对应于由于存储器设备中的故障而无法读取的位,例如,故障的wl和/或故障的bl。ldpc和/或里德-所罗门可以利用码字中每个擦除的相应位位置的“认知”来加速解码过程并因此减少延迟。在另一示例中,bch可能无法在存在擦除的情况下成功对码字解码。因此,在一个示例中,如果纠错码符合ldpc或里德-所罗门纠错码和/或与ldpc或里德-所罗门纠错码兼容,则纠错电路112可以通过擦除故障位来配置解码操作。

在另一示例中,如果纠错码符合bch纠错码和/或与之兼容,则纠错电路112可以配置解码操作以尝试使用故障位的多个可能值的至少一部分来对码字解码。例如,如果码字包括两个故障位,则纠错电路112可以配置解码操作以尝试使用多达两个故障位的四种可能组合(即,00、01、10、11)来对码字解码。然后,纠错电路112可以利用故障位的值的一种组合成功地对码字解码。然后,成功对码字解码可能不会影响不可纠正的误码率(uber)。因此,纠错电路112然后可以利用已经至少部分地基于所选择的纠错码配置的解码操作来对码字解码。

纠错电路112被配置为确定码字是否包含不对应于故障位的任何错误位。与故障位不对应的错误位是与任何识别的故障wl或任何识别的故障bl无关的错误位。如果码字确实包含不对应于故障位的错误位,则纠错电路112被配置为通知缺陷图电路114(即,缺陷图逻辑120)。然后,缺陷图逻辑120可以被配置为取回或接收解码的码字中的每个错误位的相应位置。例如,每个错误位的相应位置可以由缺陷图逻辑120从纠错电路112中取回,或者可以由纠错电路112提供给缺陷图逻辑120。

然后,缺陷图逻辑120可以被配置为针对每个错误位更新wl/bl位错误数据126。如这里所使用的,“wl/bl”对应于“wl和/或bl”。wl/bl位错误数据126被配置为包括wl标识符和对应的wl位错误数据和/或bl标识符以及由纠错电路112识别的每个错误位的相对应的bl位错误数据。wl/bl位错误数据126被配置为包括与wl标识符或bl标识符相关联的每个位的相应的指示符。换句话说,对于每个wl标识符和/或bl标识符,wl/bl位错误数据126被配置为包括与wl和/或bl相关联的每个存储器单元的指示符(例如,位)。指示符被配置为指示相关联的位是否由纠错电路112识别为错误位。缺陷图逻辑120被配置为针对wl/bl位错误数据中尚未设置的任何错误位设置位错误指示符。

然后,缺陷图逻辑120可以被配置为利用wl/bl位错误数据126来确定相对应的wl和/或相对应的bl是否有故障。可以至少部分地基于wl位错误数据和/或bl位错误数据来确定对应的wl和/或对应的bl是否有故障。可以进一步至少部分地基于阈值rber来确定相对应的wl和/或相对应的bl是否有故障。可以将针对对应wl和/或对应bl的rber确定为错误位数与关联于对应wl和/或对应bl的位总数的比率。如果针对对应wl和/或对应bl的rber大于或等于相应的对应阈值rber,则缺陷图逻辑120可以认为对应的wl和/或对应的bl有故障。阈值rber可以是在10%(%)至50%的范围内。在一个非限制性示例中,阈值rber可以等于30%。

如果对应的wl和/或对应的bl有故障,则缺陷图逻辑120被配置为更新缺陷图122。例如,可以通过向缺陷图122添加对应于故障wl的wl标识符和/或对应于故障bl的bl标识符来更新缺陷图122。如果对应的wl和/或对应的bl有故障,则缺陷图逻辑120被配置为更新wl/bl位错误数据126。例如,可以通过删除对应的故障wl的wl标识符和相关wl位错误数据和/或删除对应的故障bl的bl标识符和相关bl位错误数据来更新wl/bl位错误数据126。因此,可以保持与wl/bl位错误数据126相关联的存储容量。

因此,可以利用包括与故障wl和/或故障bl相对应的标识符的缺陷图来促进码字解码和纠错操作。擦除故障位可以改善可以适应擦除的纠错码的延迟。识别故障位可以通过促进对不能适应擦除的纠错码的解码来减少rber。

图2a和图2b是根据本公开的各种实施例的缺陷图操作的流程图200、250。图2b是图2a的继续,因此,当一起考虑时,可以最好地理解图2a和图2b。特别地,流程图200、250示出了识别故障wl和/或bl,向纠错电路提供错误位信息以及维护和更新缺陷图。例如,可以通过图1a的缺陷图电路114的元件(例如,缺陷图逻辑120)来执行操作。

该实施例的操作可以在操作202处以向纠错电路提供码字开始。例如,存储器控制器控制电路可以被配置为从存储器设备读取码字并将该码字提供给纠错电路。操作204包括取回或接收码字的地址。例如,可以从存储器控制器控制电路接收或取回地址。在操作206处,可以针对码字中的每个位识别wl和bl。例如,可以利用存储器设备图来执行识别。在操作208处,可以至少部分地基于缺陷图来确定是否任何识别的wl和/或任何识别的bl有故障。如果识别的wl和/或识别的bl有故障,则可以在操作210处通知纠错电路。然后,程序流程可以进行到操作212。

如果没有识别的wl并且没有识别的bl被确定为有故障,则程序流程可以进行到操作212。可以在操作212处确定码字是否包含任何错误位。例如,可以配置纠错电路以向缺陷图逻辑提供在码字中存在错误位的指示(如果有的话)。如果码字中没有错误位,则程序流程可以在操作214继续。

现在转向图2b,如果在码字中存在错误位,则可以在操作216处从纠错电路取回或接收解码的码字中的每个错误位的相应位置。在操作218处,可以针对每个故障位更新wl/bl位错误数据。例如,可以针对wl/bl位错误数据中尚未设置的任何错误位设置位错误指示符。在操作220处,可以至少部分地基于wl位错误数据和/或bl位错误数据来确定相对应的wl和/或相对应的bl是否有故障。如果相对应的wl和相对应的bl都没有故障,那么程序流程可以在操作222继续。如果相对应的wl和/或相对应的bl有故障,则可以在操作224更新缺陷图。可以在操作226更新wl位错误数据和/或bl位错误数据。然后,程序流程可以在操作228中继续。

因此,可以识别故障wl和/或故障bl,并且可以将相关联的故障位信息提供给纠错电路。纠错电路被配置为利用故障位信息来促进解码操作。然后,纠错电路可以提供位错误信息,可以由缺陷图逻辑然后利用该位错误信息来识别故障wl和/或故障bl。

图3是根据本公开的各种实施例的纠错操作的流程图300。特别地,流程图300示出了至少部分地基于由缺陷图逻辑提供的故障位的指示来对码字解码。例如,可以通过图1a的纠错电路112来执行操作。

该实施例的操作可以以在操作302处接收或取回码字开始。例如,可以从存储器控制器控制电路接收或从存储器控制器控制电路取回码字。可以在操作304处确定是否已经从缺陷图逻辑接收到故障位的通知。如果已经接收到故障位的通知,则在操作306处可以至少部分地基于所选择的纠错码来配置解码操作。在一个示例中,如果纠错码符合ldpc或里德-所罗门码和/或与ldpc或里德-所罗门码兼容,则可以擦除故障位。在另一示例中,如果纠错码符合bch和/或与bch兼容,则解码操作可以被配置为尝试使用故障位的多个可能值的至少一部分来对码字解码。然后,程序流程可以进行到操作308。如果没有故障位的通知,则程序流程可以进行到操作308。可以在操作308对码字进行解码。可以在操作310确定码字是否包含不与故障位对应的任何错误位。如果码字不包含任何不对应于故障位的错误位,则程序流程可以在操作314继续。如果码字确实包含不对应于故障位的错误位,则可以在操作312处通知缺陷图电路(逻辑)。然后,程序流程可以进行到操作314。

因此,可以响应于故障位的指示,至少部分地基于所选择的纠错码来来配置解码操作。

虽然图2a、图2b和图3的流程图示出了根据各种实施例的操作,但是应当理解,并非图2a、图2b和图3中描绘的所有操作都是其他实施例需要的。另外,在本文中完全预期,在本公开的其他实施例中,图2a、图2b和/或图3中描绘的操作和/或本文描述的其他操作可以以未在任何附图中具体示出的方式组合,并且这样的实施例可以包括比图2a、图2b和图3中所示的更少或更多的操作。因此,针对在一个附图中未精确示出的特征和/或操作的权利要求被认为在本公开的范围和内容内。

如在此处的任何实施例中所使用的,术语“逻辑”可以指代被配置为执行任何上述操作的应用、软件、固件和/或电路。软件可以体现为记录在非暂时性计算机可读存储介质上的软件包、代码、指令、指令集和/或数据。固件可以体现为在存储器设备中硬编码(例如,非易失性)的代码、指令或指令集和/或数据。

如本文的任何实施例中所使用的“电路”可以包括,例如,单独地或以任何组合,硬连线电路、诸如包括一个或多个单独指令处理核的计算机处理器的可编程电路、状态机电路、存储由可编程电路执行的指令的逻辑和/或固件。电路可以体现为集成电路,例如集成电路芯片。在一些实施例中,可以至少部分地由执行与本文描述的功能相对应的代码和/或指令集(例如,软件、固件等)的处理器电路102来形成电路,从而将通用处理器变换成特定用途的处理环境以执行本文描述的操作中的一个或多个。在一些实施例中,存储器控制器电路或其他系统的各种组件和电路可以组合在片上系统(soc)架构中。

前面提供了示例系统架构和方法,然而,对本公开的修改是可能的。处理器可以包括一个或多个处理器核,并且可以被配置为执行系统软件。系统软件可以包括例如操作系统。设备存储器可以包括i/o存储器缓冲器,其被配置为存储将由网络接口发送或由网络接口接收的一个或多个数据分组。

操作系统(os)可以被配置为管理系统资源并控制在例如系统100上运行的任务。例如,os可以使用来实现,但是可以使用其他操作系统。在另一示例中,os可以使用androidtm、ios、来实现。在一些实施例中,os可以由虚拟机监视器(或管理程序)代替,虚拟机监视器可以向在一个或多个处理单元上运行的各种操作系统(虚拟机)提供针对底层硬件的抽象层。操作系统和/或虚拟机可以实现协议栈。协议栈可以执行一个或多个程序来处理分组。协议栈的示例是tcp/ip(传输控制协议/因特网协议)协议栈,其包括用于处置(例如,处理或生成)分组以通过网络发送和/或接收的一个或多个程序。

缺陷图电路存储器124可以包括以下类型的存储器中的一个或多个:半导体固件存储器、可编程存储器、非易失性存储器、只读存储器、电可编程存储器、随机存取存储器、存储器、磁盘存储器,以及/或光盘存储器。附加地或替代地,系统存储器可以包括其他和/或以后开发的类型的计算机可读存储器。

这里描述的操作的实施例可以在其上存储有指令的计算机可读存储设备中实现,所述指令在由一个或多个处理器执行时执行所述方法。处理器可以包括例如处理单元和/或可编程电路。存储设备可以包括机器可读存储设备,其包括任何类型的有形的非暂时性存储设备,例如,任何类型的盘,包括软盘、光盘、光盘只读存储器(cd-rom)、光盘可重写(cd-rw),以及磁光盘、半导体器件(如只读存储器(rom))、随机存取存储器(ram)(如动态和静态ram)、可擦除可编程只读存储器(eprom)、电可擦除可编程只读存储器(eeprom)、闪存、磁卡或光卡或适用于存储电子指令的任何类型的存储设备。

在一些实施例中,硬件描述语言(hdl)可用于指定用于本文描述的各种逻辑和/或电路的电路和/或逻辑实现方式。例如,在一个实施例中,硬件描述语言可以符合极高速集成电路(vhsic)硬件描述语言(vhdl)或与之兼容,该vhdl可以实现本文描述的一个或多个电路和/或逻辑的半导体制造。vhdl可以符合或兼容ieee标准1076-1987、ieee标准1076.2、ieee1076.1、vhdl-2006的ieeedraft3.0、vhdl-2008的ieeedraft4.0和/或其他版本的ieeevhdl标准和/或其他硬件描述标准。

示例

本公开的示例包括主题材料,诸如纠错码中与故障字线和故障位线信息相关的方法、用于执行该方法的动作的单元、设备或者装置或系统,如下所述。

示例1.根据该示例,提供了一种存储器控制器。存储器控制器包括存储器控制器控制电路、缺陷图逻辑和纠错电路。存储器控制器控制电路用于从存储器设备读取码字。缺陷图逻辑用于至少部分地基于存储器设备图来识别码字中的每个位的相应字线(wl)和相应位线(bl)并且至少部分地基于缺陷图来确定任何识别的wl和/或任何识别的bl是否有故障。如果任何识别的wl和/或任何识别的bl有故障,则纠错电路用于配置解码操作。

示例2.该示例包括示例1的元素,其中缺陷图逻辑用于至少部分地基于相应的wl位错误数据和/或相应的bl位错误数据来确定wl和/或bl是否有故障;并且如果wl有故障和/或bl有故障,则更新缺陷图。

示例3.该示例包括示例2的元素,其中确定wl和/或bl是否有故障包括确定针对wl和/或bl的原始比特误码率(rber)。

示例4.该示例包括示例1或2的元素,其中所述纠错电路用于向所述缺陷图逻辑通知所述码字是否包含错误位,所述错误位不是与所识别的wl和/或所识别的bl相关联的故障位。

示例5.该示例包括示例1或2的元素,其中配置解码操作是至少部分地基于所选择的纠错码的。

示例6.该示例包括示例5的元素,其中纠错码包括低密度奇偶校验(ldpc)纠错码、里德-所罗门纠错码或bose-chaudhuri-hocquenghem(bch)纠错码。

示例7.该示例包括示例5的元素,其中所选择的纠错码是ldpc或里德-所罗门,并且纠错电路用于擦除码字的每个故障位,每个故障位与识别的故障wl和/或识别的故障bl相关联。

示例8.该示例包括示例5的元素,其中所选择的纠错码是bch,并且所述纠错电路用于尝试使用所述码字的一个或多个故障位的多个可能值的至少一部分来对所述码字解码,每个故障位与识别的故障wl和/或识别的故障bl相关联。

示例9.该示例包括示例2的元素,其中缺陷图逻辑用于如果wl有故障则更新wl位错误数据和/或如果bl有故障则更新bl位错误数据。

示例10.该示例包括示例1或2的元素,其中码字中的多个位分布在存储器设备上。

示例11.根据该示例,提供了一种方法。该方法包括由存储器控制器控制电路从存储器设备读取码字;由缺陷图逻辑至少部分地基于存储器设备图来识别码字中的每个位的相应的字线(wl)和相应的位线(bl);由缺陷图逻辑至少部分地基于缺陷图来确定任何识别的wl和/或任何识别的bl是否有故障;以及如果任何识别的wl和/或任何识别的bl有故障,则通过纠错电路来配置解码操作。

示例12.该示例包括示例11的元素,还包括:由所述缺陷图逻辑至少部分地基于相应的wl位错误数据和/或相应的bl位错误数据来确定wl和/或bl是否有故障;并且,如果所述wl有故障和/或所述bl有故障,则由所述缺陷图逻辑更新所述缺陷图。

示例13.该示例包括示例12的元素,其中确定wl和/或bl是否有故障包括确定针对wl和/或bl的原始比特误码率(rber)。

示例14.该示例包括示例11的元素,还包括:由所述纠错电路向所述缺陷图逻辑通知所述码字是否包含错误位,所述错误位不是与所识别的wl和/或所识别的bl相关联的故障位。

示例15.该示例包括示例11的元素,其中,所述配置是至少部分地基于所选择的纠错码的。

示例16.该示例包括示例15的元素,其中纠错码包括低密度奇偶校验(ldpc)纠错码、里德-所罗门纠错码或bose-chaudhuri-hocquenghem(bch)纠错码。

示例17.该示例包括示例15的元素,其中所选择的纠错码是ldpc或里德-所罗门,并且纠错电路用于擦除码字的每个故障位,每个故障位与识别的故障wl和/或识别的故障bl相关联

示例18.该示例包括示例15的元素,其中所选择的纠错码是bch,并且所述纠错电路尝试使用码字的一个或多个故障位的多个可能值的至少一部分来对码字解码,每个故障位与识别的故障wl和/或识别的故障bl相关联。

示例19.该示例包括示例12的元素,还包括:由缺陷图逻辑如果wl有故障则更新wl位错误数据和/或如果bl有故障则更新bl位错误数据。

示例20.该示例包括示例11的元素,其中码字中的多个位分布在存储器设备上。

示例21.根据该示例,提供了一种系统。该系统包括存储器设备和存储器控制器。存储器控制器包括存储器控制器控制电路、缺陷图逻辑和纠错电路。存储器控制器控制电路用于从存储器设备读取码字。缺陷图逻辑用于至少部分地基于存储器设备图来识别码字中的每个位的相应字线(wl)和相应位线(bl)并且至少部分地基于缺陷图来确定任何识别的wl和/或任何识别的bl是否有故障。如果任何识别的wl和/或任何识别的bl有故障,则纠错电路用于配置解码操作。

示例22.该示例包括示例21的元素,其中所述缺陷图逻辑用于至少部分地基于相应的wl位错误数据和/或相应的bl位错误数据来确定wl和/或bl是否有故障;并且如果所述wl有故障和/或所述bl有故障,则更新所述缺陷图。

示例23.该示例包括示例22的元素,其中确定wl和/或bl是否有故障包括确定针对所述wl和/或bl的原始比特误码率(rber)。

示例24.该示例包括示例21或22的元素,其中所述纠错电路用于向所述缺陷图逻辑通知所述码字是否包含错误位,所述错误位不是与所识别的wl和/或所识别的bl相关联的故障位。

示例25.该示例包括示例21或22的元素,其中配置解码操作是至少部分地基于所选择的纠错码的。

示例26.该示例包括示例25的元素,其中所述纠错码包括低密度奇偶校验(ldpc)纠错码、里德-所罗门纠错码或bose-chaudhuri-hocquenghem(bch)纠错码。

示例27.该示例包括示例25的元素,其中所选择的纠错码是ldpc或里德-所罗门,并且所述纠错电路用于擦除所述码字的每个故障位,每个故障位与识别的故障wl和/或识别的故障bl相关联。

示例28.该示例包括示例25的元素,其中所选择的纠错码是bch,并且所述纠错电路用于尝试使用所述码字的一个或多个故障位的多个可能值的至少一部分来对所述码字解码,每个故障位与识别的故障wl和/或识别的故障bl相关联。

示例29.该示例包括示例22的元素,其中缺陷图逻辑用于如果wl有故障则更新wl位错误数据和/或如果bl有故障则更新bl位错误数据。

示例30.该示例包括示例21或22的元素,其中码字中的多个位分布在存储器设备上。

示例31.根据该示例,提供了一种计算机可读存储设备。该设备上存储有指令,所述指令当由一个或多个处理器执行时,导致以下操作,包括:从存储器设备读取码字;至少部分地基于存储器设备图,识别码字中的每个位的相应的字线(wl)和相应的位线(bl);至少部分地基于缺陷图来确定任何识别的wl和/或任何识别的bl是否有故障;以及如果任何识别的wl和/或任何识别的bl有故障,则配置解码操作。

示例32.该示例包括示例31的元素,其中所述指令当由一个或多个处理器执行时导致以下附加操作,包括:由所述缺陷图逻辑至少部分地基于相应的wl位错误数据和/或相应的bl位错误数据来确定wl和/或bl是否有故障;并且,如果所述wl有故障和/或所述bl有故障,则由所述缺陷图逻辑更新所述缺陷图。

示例33.该示例包括示例32的元素,其中确定wl和/或bl是否有故障包括确定针对wl和/或bl的原始比特误码率(rber)。

示例34.该示例包括示例31或32的元素,其中所述指令当由一个或多个处理器执行时导致以下附加操作,包括:由所述纠错电路向所述缺陷图逻辑通知所述码字是否包含错误位,所述错误位不是与所识别的wl和/或所识别的bl相关联的故障位。

示例35.该示例包括示例31或32的元素,其中配置是至少部分地基于所选择的纠错码的。

示例36.该示例包括示例35的元素,其中纠错码包括低密度奇偶校验(ldpc)纠错码、里德-所罗门纠错码或bose-chaudhuri-hocquenghem(bch)纠错码。

示例37.该示例包括示例35的元素,其中所选择的纠错码是ldpc或里德-所罗门,并且所述纠错电路用于擦除所述码字的每个故障位,每个故障位与识别的故障wl和/或识别的故障bl相关联。

示例38.该示例包括示例35的元素,其中所选择的纠错码是bch,并且所述纠错电路用于尝试使用码字的一个或多个故障位的多个可能值的至少一部分来对码字解码,每个故障位与识别的故障wl和/或识别的故障bl相关联。

示例39.该示例包括示例32的元素,其中所述指令当由一个或多个处理器执行时导致以下附加操作,包括:如果wl有故障则更新wl位错误数据和/或如果bl有故障则更新bl位错误数据。

示例40.该示例包括示例31或32的元素,其中码字中的多个位分布在存储器设备上。

示例41.根据该示例,提供了一种设备。该设备包括用于通过存储器控制器控制电路从存储器设备读取码字的单元;用于通过缺陷图逻辑至少部分地基于存储器设备图来识别码字中的每个位的相应字线(wl)和相应位线(bl)的单元;用于通过缺陷图逻辑至少部分地基于缺陷图来确定任何识别的wl和/或任何识别的bl是否有故障的单元;以及用于如果任何识别的wl和/或任何识别的bl有故障则通过纠错电路来配置解码操作的单元。

示例42.该示例包括示例41的元素,还包括用于由缺陷图逻辑至少部分地基于相应的wl位错误数据和/或相应的bl位错误数据来确定wl和/或bl是否有故障的单元;以及用于由缺陷图逻辑如果wl有故障和/或bl故障则更新缺陷图的单元。

示例43.该示例包括示例42的元素,其中确定wl和/或bl是否有故障包括确定针对wl和/或bl的原始比特误码率(rber)。

示例44.该示例包括示例41或42的元件,还包括用于由纠错电路向缺陷图逻辑通知码字是否包含错误位的单元,该错误位不是与所识别的wl和/或所识别的bl相关联的故障位。

示例45.该示例包括示例41或42的元素,其中,配置是至少部分地基于所选择的纠错码的。

示例46.该示例包括示例45的元素,其中所述纠错码包括低密度奇偶校验(ldpc)纠错码、里德-所罗门纠错码或bose-chaudhuri-hocquenghem(bch)纠错码。

示例47.该示例包括示例45的元素,其中所选择的纠错码是ldpc或里德-所罗门,并且所述纠错电路用于擦除所述码字的每个故障位,每个故障位与识别的故障wl和/或识别的故障bl相关联。

示例48.该示例包括示例45的元素,其中所选择的纠错码是bch,并且所述纠错电路用于尝试使用所述码字的一个或多个故障位的多个可能值的至少一部分来对所述码字解码,每个故障位与识别的故障wl和/或识别的故障bl相关联。

示例49.该示例包括示例42的元素,还包括用于由缺陷图逻辑如果wl有故障则更新wl位错误数据和/或如果bl有故障则更新bl位错误数据的单元。

示例50.该示例包括示例41或42的元素,其中码字中的多个位分布在存储器设备上。

示例51.该示例包括示例21或22的元素,还包括处理器电路。

示例52.根据该示例,提供了一种系统。该系统包括至少一个设备,所述至少一个设备被设置为执行示例11至20中的任一项的方法。

示例53.根据该示例,提供了一种设备。该设备包括用于执行示例11至20中的任一示例的方法的单元。

示例54.根据该示例,提供了一种计算机可读存储设备。该设备上存储有指令,所述指令当由一个或多个处理器执行时,导致以下操作,所述操作包括:根据示例11至20中的任一示例的方法。

本文采用的术语和表达用作描述而非限制的术语,并且在使用这些术语和表达时,无意排除所示和所述特征(或其部分)的任何等同物,并且认识到在权利要求的范围内可以进行各种修改。因此,权利要求旨在涵盖所有这些等同物。

本文已经描述了各种特征、方面和实施例。如本领域技术人员将理解的,这些特征、方面和实施例易于彼此组合以及进行变化和修改。因此,本公开应被视为包含这样的组合、变化和修改。

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