CN106448732A - 半导体存储器单元多写避免编码装置、系统和方法 - Google Patents

半导体存储器单元多写避免编码装置、系统和方法 Download PDF

Info

Publication number
CN106448732A
CN106448732A CN201610656244.4A CN201610656244A CN106448732A CN 106448732 A CN106448732 A CN 106448732A CN 201610656244 A CN201610656244 A CN 201610656244A CN 106448732 A CN106448732 A CN 106448732A
Authority
CN
China
Prior art keywords
delta
trial
logic
mwa
old
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.)
Granted
Application number
CN201610656244.4A
Other languages
English (en)
Other versions
CN106448732B (zh
Inventor
Y·朱
M·戈尔
C·彼特斯通
Y·邱
S·张
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of CN106448732A publication Critical patent/CN106448732A/zh
Application granted granted Critical
Publication of CN106448732B publication Critical patent/CN106448732B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/22Safety or protection circuits preventing unauthorised or accidental access to memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C17/00Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
    • G11C17/14Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM
    • G11C17/16Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM using electrically-fusible links
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C17/00Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
    • G11C17/14Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM
    • G11C17/18Auxiliary circuits, e.g. for writing into memory
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/36Data generation devices, e.g. data inverters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/24Memory cell safety or protection circuits, e.g. arrangements for preventing inadvertent reading or writing; Status cells; Test cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2263Write conditionally, e.g. only if new data and old data differ

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本发明涉及半导体存储器单元多写避免编码装置、系统和方法,公开要被写入到存储器位置(205)的数据字(215)以多写避免(“MWA”)码字进行增量编码。MWA码字导致不将包含逻辑“0”的单个位存储单元重写为“0”状态,并且不将逻辑“1”重写到已经被写入一次逻辑“1”的单元。由差字DELTA_D(228A、228B)编索引存储在查找表(“LUT”)(235)中的潜在的MWA码字(236)。DELTA_D(228A、228B)表示当前存储在存储器位置(205)处的数据字(212)和要被存储在存储器位置(205)处的新的数据字(“NEW_D”)(215)之间的逐位差(“增量”)。如果MWA码字没有违反多写避免的原理,则验证和选择逻辑(245)选择表示要被写入的NEW_D(215)的MWA码字。一些实施例使用模式生成器而不是从LUT(235)中索引MWA码字来生成MWA码字。

Description

半导体存储器单元多写避免编码装置、系统和方法
技术领域
本文所描述的实施例涉及半导体存储器,包括用于数据编码以避免多次写入相同的存储器单元的结构和方法。
背景技术
写入一次存储器(“WOM”)和一次可编程(“OTP”)存储器是用于分类限于任何存储单元的单个状态改变的非易失性半导体存储器技术的术语。这样的技术的示例包括熔丝连接存储器、电可编程只读存储器(“EPROM”)和电可擦除可编程只读存储器(“EEPROM”)等。
在制造期间,WOM或OTP半导体存储器阵列的存储单元通常都被初始化为相同的状态,不管全部逻辑0或全部逻辑1。应当注意,本文中的示例假设在制造期间阵列的存储器单元被初始化为全部逻辑0。然而,在上述公开中,一些存储器设备可以被初始化为全部逻辑1而不丧失普遍性。
在制造后已经写入一次之后,与WOM或OTP存储单元相关联的物理限制要么完全防止单元的多个状态改变,要么致使很难有多个状态改变。例如,因为没有办法恢复熔丝连接,所以一旦使用过电流写入信号已经熔化熔丝连接,则熔丝连接存储器的状态不能被改变。只有通过将与存储单元相关联的浮栅金属氧化物半导体场效应晶体管(MOSFET)暴露于高强度紫外线(UV),才可以对EEPROM存储器阵列进行重新编程。后一种工艺使用透明窗口以便于访问浮置栅极,并且在每个重新编程之前涉及使用UV光源的难处理的擦除操作。
对于要被写入到WOM或OTP阵列的数据的“存储器单元复位避免”(“MCRA”)编码的技术是已知的。MCRA编码使多个数据字能够写入到目标存储器位置,同时防止对与目标存储器位置相关联的任何单独存储单元的超过单个状态改变。这样做很重要,因为将连续的数据字写入到目标存储器位置将不正确地写入数据到一定程度,即连续的写入尝试使对应于目标存储器位置的单元的一个或多个位复位的程度。因为上面所描述的物理限制,所以已经写入的单元的状态将不会被复位。典型的MCRA编码技术可以将m位数据字D编码为位长度n=(2^m)-1位的n位码字C。然后,码字C被写入目标存储器位置,而不是写入D本身。因此,MCRA编码以存储器阵列中的写入一次位置可以被写入多次的权衡,使用额外的存储器单元以冗余地对数据进行编码。MCRA编码通常使得能够写入目标存储器位置T=1+2^(m-2)次。应当注意,为了该全部公开的目的,“存储器位置”、“目标存储器位置”和“存储单元的子集”应指两个或更多个单独存储器单元的集合,每个存储器单元能够存储单个码字位。因此,“存储器位置”或“存储单元的子集”能够存储整个码字。
图1是用于长度m=2的数据字D的现有技术示例MCRA编码表100。在表100的列110中按顺序列出了四种可能的数据字。被存储的每个D以要被写入到存储器位置的对应的C进行编码。C选自第一次存储器位置被写入的列115。C选自第二次存储器位置被写入的列120。然而,如果D不改变,则存储器位置不被重写。所以,例如,如果要被存储的第一D是“01”125,则用C1=“001”128写入存储器位置。如果在以后的时间处数据字D=“10”130要被存储在相同的存储器位置处,则用C2=“101”133重写存储器位置。注意,从C1=“001”128到C2=“101”133的码字改变不尝试从逻辑“1”到逻辑“0”来复位目标存储器位置的任何位,因为使用上面所描述的WOM存储器类型这样做是不可能的。然而,还应当注意,所描述的MCRA编码尝试写入C1的低阶位135A和C2的低阶位135B两次,在第一和第二期间每个写入一次。
再来看另一个示例,如果要被存储在存储器位置处的第一D是“11”140,则用C1=“100”144写入该存储器位置。如果在以后的时间处数据字D=“01”125将被存储在相同的存储器位置处,则用C2=“110”150重写该存储器位置。注意,从C1=“100”144到C2=“110”150的码字改变不尝试从逻辑“1”到逻辑“0”来复位目标存储器位置的任何位,因为这样做物理上是不可能的。然而,还应当注意,所描述的MCRA编码尝试写入C1的高阶位155A和C2的高阶位155B两次。
发明内容
与一些半导体存储器技术相关联的位存储单元在它们的如所制造的状态经由第一写入操作已经被改变之后就不能够进行第二状态改变。对于其它技术诸如EEPROM、擦除和重写是可能的,但是繁琐。可以使用如先前所描述的MCRA编码来避免使目标存储器位置的一次编程的单元复位的问题。然而,MCRA编码操作可以尝试将逻辑“1”重写入先前写入的单元,如以上在与图1的MCRA编码表相关联的示例中所描述的。这样做可能导致位线干扰和噪声相关的问题,因为在写入操作期间对应的存储单元位置实际上没有被重写而是保持处于它们的先前的设置状态。使用其它存储器类型诸如闪速存储器实现的存储单元可以能够多个状态改变。然而,随着每个状态改变,单元可以逐渐变得更弱。因此,可以期望使用“多写避免”(“MWA”)码(本文中还被称为半导体存储器“增量(delta)编码”)对要被写入此类存储器类型的数据进行编码。
本文中所描述的结构和方法对将要被写入到给定的存储器位置的连续的数据字以MWA码字进行编码,该MWA码字不重写已经被写入一次逻辑“1”的单个位存储单元。实施例也不将包含逻辑“0”的单元重写为“0”状态。“增量编码”是指仅被写入的目标存储器位置的单元是新的码字需要从逻辑“0”到逻辑“1”状态改变(“增量”)的这些目标存储器位置的单元的特征。因此,不写入整个新的码字,只写入增量。
本文中公开了MWA编码器的各种实施例。第一实施例将MWA码字存储在查找表(“LUT”)中。在与要被重写的存储器位置相关联的现有的数据字(“OLD_D”)和将与该存储器位置相关联的新的数据字(“NEW_D”)之间确定逐位差。逐位差被用于从LUT中索引对应于NEW_D的几个潜在的MWA码字。验证(validation)和选择逻辑从几个潜在的MWA码字选择不违反存储器单元多写避免的原理(这里还被称为“MWA要求”)的一个。然后,所选择的MWA码字的增量位被写入存储器位置。
MWA编码器的第二实施例生成m位数据字,并且将每个生成的m位数据字变换为潜在的MWA码字,而不是从LUT查找MWA码字。m位模式生成器产生中间数据字。中间数据字与NEW_D相结合,并且进行二进制加权编码,以生成潜在的MWA码字。当生成每个潜在的MWA码字时,由验证逻辑进行检查,以确定其是否满足MWA要求。如果满足MWA要求,则对应的DELTA_C位被写入目标存储器位置。在MWA验证的情况下,从来自模式生成器的下一个m位模式生成另一个潜在的MWA码字,并且该另一个潜在的MWA码字被验证。过程继续直到发现有效的MWA码字。然后,来自MWA码字的DELTA_C位被写入目标存储器位置。
如同第二实施例,MWA编码器的第三实施例生成潜在的MWA码字。然而,第三实施例的模式生成器在码字域操作,而没有NEW_D输入。因此,第三实施例验证为了MWA有效性和为了与期望的NEW_D对应二者而生成的潜在的MWA码字。由第一有效性测试逻辑对由码字模式生成器生成的潜在的MWA码字针对MWA遵从(compliance)进行有效性测试,如先前针对第一实施例和第二实施例所描述的。如果潜在的MWA码字是无效的,则不同的潜在的MWA码字从码字模式生成器被请求。如果是有效的,则对潜在的MWA码字进行解码,以生成试验新的数据字(“NEW_D_TRIAL”)。将NEW_D_TRIAL与期望的NEW_D相比较。如果NEW_D_TRIAL与NEW_D相匹配,则有效性信号允许来自MWA码字的DELTA_C位被写入到目标存储器位置。如果NEW_D_TRIAL与NEW_D不匹配,则从码字模式生成器请求不同的潜在的MWA码字。
附图说明
图1是用于长度m=2的数据字D的现有技术示例MCRA编码表。
图2是根据各种示例方法和实施例图示说明基于LUT的半导体存储器单元多写避免编码装置的框图。
图3是根据各种示例方法和实施例图示说明与存储器单元多写避免编码装置相关联的MCRA解码器中的数据字和码字位字段的图示。
图4是根据各种示例方法和实施例图示说明与存储器单元多写避免编码装置相关联的MCRA解码器的框图。
图5是根据各种示例方法和实施例图示说明与存储器单元多写避免编码装置相关联的MCRA解码器中的示例中间数据值的数据表。
图6是根据各种示例方法和实施例图示说明基于模式生成器的半导体存储器单元多写避免编码装置的框图。
图7是根据各种示例方法和实施例图示说明基于模式生成器的半导体存储器单元多写避免编码装置的框图。
具体实施方式
图2是根据各种示例方法和实施例图示说明基于LUT的半导体存储器单元MWA编码装置200的框图。装置200接合到半导体存储器阵列205。存储器阵列205包括从其读取现有的(2^m-1)位MWA码字(“OLD_C”)208的存储单元的子集。OLD_C 208表示现有的m位数据字(“OLD_D”)212。编码装置200对OLD_C 208创建位改变以创建新的MWA码字(“NEW_C”)。NEW_C对新的数据字(“NEW_D”)215进行编码,用于存储在存储器阵列205中。OLD_D 212和NEW_D215是m位宽。OLD_C 208和NEW_C是(2^m-1)位宽。
MWA编码装置200包括存储器单元复位避免(“MCRA”)解码器220。MCRA解码器220从存储器接收码字(例如,在MWA编码装置200的情况下的OLD_C 208)。MCRA解码器220对码字解码,以便找到对应的数据字(例如,从OLD_C 208解码的OLD_D 212)。
图3是图示说明由MCRA解码器220处理的(2^m-1)位长二进制码字C310中的位字段的图示。C的低阶位位置到高阶位位置被命名为j=0到j=(2^m-2)。图3还示出了由C的解码产生的数据字D 315中的位字段。D是具有被命名为i=0到i=m-1的低阶位位置到高阶位位置的m位二进制数据字。通过对码字位C(j)的子集实行异或(“XOR”)操作,重新获得每位D(i)。虚线320示出针对m=3示例情况哪些码字位C(j)进行XOR,以重新获得每个数据字位D(i)。
例如,D(0)=C(0)XOR C(2)XOR C(4)XOR C(6)。为了简洁和清晰起见,紧接着先前等式的以下等价形式在下文中将被使用为类似的XOR等式:D(0)=XOR[C(0),C(2),C(4),C(6)]。D(1)=XOR[C(1),C(2),C(5),C(6)]。D(2)=XOR[C(3),C(4),C(5),C(6)]。
一般来说,MCRA解码器对C实行以下操作以重新创建D:
可以用组合逻辑实施MCRA解码器,并且可以并行地针对每个i确定D(i)。MCRA解码器的一些实施例可以迭代地针对每个i确定D(i),如以下进一步描述的。以下描述的示例MCRA解码器结构和操作阐明用于选择哪些码位C(j)进行XOR以对特定的数据位D(i)解码的过程。应当注意,可以用模2和运算替换在本公开中描述的XOR操作,而不丧失普遍性。
图4是根据各种示例方法和实施例图示说明与存储器单元MWA编码装置相关联的MCRA解码器220的框图。应当注意,这里结合基于LUT的MWA编码装置200的描述来描述MCRA解码器220。还应当注意,解码器220在以下进一步描述的MWA编码装置的其它实施例中被使用。
MCRA解码器220包括数据字生成器408。数据字生成器408生成一系列m位二进制数据字D。由数据字生成器408生成的每个数据字D表示二进制加权整数值K。数据字生成器408生成表示K=1到K=(2^m-1)的位长度m的全部可能的二进制数据字D。生成器的一些实施例可以生成对应于K=0的D=(全部0);然而,解码器220不使用K=0。
图5是图示说明对于m=3的示例情况在MCRA解码器220内生成的中间数据值的数据表。二进制字510由数据字生成器408生成。所生成的每个二进制字510表示对应的二进制加权整数值K 515。应当注意,数据字生成器408不需要顺序地生成二进制字510,只要生成表示K=1到K=(2^m-1)的全部可能的二进制字。
现在转回到图4,MCRA解码器220还包括数据字索引生成器415。数据字索引生成器415生成从i=0到i=m-1的一系列数据字位位置索引i 418。
MCRA解码器220还包括耦接到数据字索引生成器415且耦接到数据字生成器408的数据位索引器422。数据位索引器422接收来自数据字索引生成器415的索引i 418的当前值和来自数据字生成器408的数据字K 412的当前值。数据位索引器输出表示K 412的当前数据字的第i位的状态,其被命名为B(K,i)425。简要地转到图5,针对示例515,K=3。对于i=0,设置对应于K=3的二进制字(011)的第0位。因此,对于示例515,B(3,0)=1。对于i=1,设置对应于K=3的二进制字(011)的第1位。因此,对于示例515,B(3,1)=1。对于i=2,重新设置对应于K=3的二进制字(011)的第2位。因此,对于示例515,B(3,2)=0。
转回到图4,MCRA解码器220还包括码位索引器430。码位索引器430被耦接到数据字生成器408以接收当前K 412,并且码位索引器430被耦接到解码器输入端以接收要被解码的码字C 435。码位索引器发现并且确定C 435的第(K-1)位的状态,并且将索引的码位状态输出为B_C(K-1)438。
MCRA解码器220还包括耦接到数据位索引器422并且耦接到码位索引器430的与(AND)逻辑442。AND逻辑442针对每个K和每个i确定是否设置了B(K,i)和B_C(K-1)两者。如果是,则存储逻辑445启动耦接到码位索引器430的交叉(intersection)位缓冲器455中的码位索引C(K-1)450的存储。对于图5的示例515,C(K-1)=C2被存储。
MCRA解码器220还包括耦接到数据字生成器408的数据值跟踪逻辑460。数据值跟踪逻辑460确定当i 418被设置为当前值时,是否已经生成全部可能的数据字。如果未生成全部可能的数据字,则数据值跟踪逻辑460向数据字生成器408启动下一个K的请求。另一方面,如果当i 418被设置为当前值时已经生成全部可能的数据字,则数据值跟踪逻辑启动将对标记为逻辑“1”且存储在交叉位缓冲器455中的全部码字位执行XOR操作。由通信地耦接到数据位索引器422且通信地耦接到码位索引器430的交叉XOR逻辑465实行XOR操作。对于每个i,交叉XOR逻辑对B(K,i)和C(K-1)都是逻辑“1”的全部位执行XOR操作,以便生成解码的数据字D的对应的位D(i)。现在再次转到图5,示例520示出包括在XOR操作中用于重新获得D(i=0)数据位的码字位位置的集合为{C0、C2、C4、C6}。
转回到图4,MCRA解码器220还包括耦接到数据字索引生成器415的数据字索引跟踪逻辑470。数据字索引跟踪逻辑470确定在每个XOR操作之后是否已经生成i的全部值。如果未生成i的全部值,则数据字索引跟踪逻辑470向数据字索引生成器415发起请求,以生成下一个i。另一方面,如果已经生成i的全部值,则数据字索引跟踪逻辑470终止解码,因为C435已经被完全解码。应当注意,K和i的值不需要顺序地或以任何特定的次序被迭代。还应当注意,MCRA解码器220的一些实施例可以在移动到不同的K之前针对每个K的值遍历数据字索引i的多个值,或者可以在移动到不同的i之前针对每个i遍历K的多个值,或者可以以任何次序这样做。
现在返回到图2,基于LUT的半导体存储器单元MWA编码装置200包括耦接到MCRA解码器220的m位宽XOR逻辑225。XOR逻辑225接收OLD_D 212和期望的NEW_D 215进行存储,并且对OLD_D 212和NEW_D215执行逐位XOR操作,以便创建m位宽二进制字DELTA_D 228A和DELTA_D 228B。DELTA_D 228A和DELTA_D 228B表示OLD_D212和NEW_D 215之间的位状态差。
MWA编码装置200还包括耦接到XOR逻辑225的表查找逻辑232。表查找逻辑232接收DELTA_D 228A,并且将来自耦接到表查找逻辑232的二维增量编码LUT 235的潜在的(potential)MWA码字DELTA_C(I)的集合编索引。
在操作期间,由表查找逻辑232使用DELTA_D 228A和DELTA_D 228B索引LUT 235。增量编码LUT 235存储与每个DELTA_D相关联的2^(m-1)个潜在的差(difference)码字DELTA_C(I)236的集合。每个差码字DELTA_C(i)236的集合(例如,集合238)对应于可能的DELTA_D 228B(例如,DELTA_D240)。每个DELTA_C(I)236的每个设置位表示在OLD_C 208和NEW_C之间对应的位位置处的状态改变。NEW_C表示NEW_D 215。
差码字DELTA_C(I)236中的一个或多个可以满足在位在OLD_C 208中被设置的位位置处没有位设置的MWA要求。如果不能由对应于当前DELTA_D的任何DELTA_C(I)(例如,对应于010的DELTA_D 240的四个DELTA_C(I)238中的任何DELTA_C(I)238)满足后一个条件,则尝试的NEW_D 215的编码失败。这样的失败是编码NEW_D 215必需的访问的存储单元的集合的全部单元先前已经被写入的指示。在后一种情况下,这由在MWA编码装置200的外部的监管逻辑负责,以决定做什么。例如,在WOM类型存储单元的情况下,不能写入如由编码器200编码的NEW_D。尝试这样做将尝试改变已经被写入的一个或多个单个写入存储单元的状态。
应当注意,可以在比使用用于编码操作的MWA编码装置200的时间更早的时间处确定LUT 235中的项目。可以通过利用最多两个设置的位生成(2^m-1)位字的全部位组合以创建LUT DELTA_C(I)值236来创建LUT项目。然后,可以使用MCRA解码器诸如上面所描述的解码器220对每个这样的LUT DELTA_C(I)值进行解码。MCRA解码器确定对应于解码器输入处的LUTDELTA_C(I)值的LUT DELTA_D值。然后,DELTA_C(I)值在LUT中与出现在解码器的输出处的DELTA_D值相关联。(例如,使用图2上所示的LUT可视化,解码为特定DELTA_D的DELTA_C(I)值被插入与该DELTA_D相关联的LUT行中)。
编码器200还包括通信地耦接到增量编码LUT 235的DELTA_C有效性测试和选择逻辑245。DELTA_C有效性测试和选择逻辑245确定(若有的话)对应于当前DELTA_D的DELTA_C(I)中的哪些满足如上所述的MWA要求。DELTA_C有效性测试和选择逻辑245的AND逻辑部分(图2中未示出)接收OLD_C 208和DELTA_C(I)字中的每个。AND逻辑部分通过确认OLD_C208与DELTA_C(I)的逐位比较导致全部逻辑“0”来测试DELTA_C(I)字中的每个。
如果是这样,则DELTA_C有效性测试和选择逻辑245通过对应于当前DELTA_D且满足MWA要求的DELTA_C(I)中选择的一个,使得能够进行存储单元的集合中的OLD_C 208的更新。所选择的DELTA_C(I)被命名为“DELTA_C”250。应当注意,仅DELTA_C 250的设置位需要被写入到存储器阵列存储单元的子集,以写入NEW_C。换言之,通过用NEW_C替代OLD_C208,编码的NEW_D 215可以被存储在与编码的OLD_D 212相同的存储器位置中。并且可以通过改变仅对应于DELTA_C 250的一个或两个设置位的这些存储单元的状态,OLD_C 208可以用NEW_C替代。
图6是根据各种示例方法和实施例图示示出基于模式生成器(pattem generator)的半导体存储器单元MWA编码装置600的框图。MWA编码装置600包括如利用图3、图4和图5所示出的且如以上参考图2的编码装置200所描述的MCRA解码器220。MCRA解码器220接收来自半导体存储器阵列205中的存储单元的子集的现有的(2^m)-1位宽MWA码字OLD_C 208。OLD_C 208表示现有的m位数据字OLD_D 212。MCRA解码器220对OLD_C208解码以确定OLD_D 212。
MWA编码装置600还包括耦接到MCRA解码器220的第一m位宽XOR逻辑225。XOR逻辑225接收将要写入的OLD_D 208和NEW_D 215。XOR逻辑225对OLD_D 212和NEW_D 215执行逐位XOR操作,以便创建DELTA_D 228。
编码装置600还包括通信地耦接到第一m位宽XOR逻辑225的m位模式生成器635。模式生成器635生成m位中间数据字(“DATA_I”)638。应当注意,不需要顺序地或以任何特定的次序生成DATA_I 638。
编码装置600还包括耦接到第一m位XOR逻辑225并耦接到m位模式生成器635的第二m位XOR逻辑642。第二m位XOR逻辑642接收DELTA_D228和DATA_I 638,并且对DELTA_D 228和DATA_I 638执行逐位XOR操作。这样做创建m位中间数据差字(“DELTA_D_I”)645。
编码装置600还分别包括第一二进制加权编码器650和第二二进制加权编码器655。第一二进制加权编码器650将DELTA_D_I 645变换为第一(2^m)-1位试验(trial)码字分量DELTA_C_TRIAL_1660。DELTA_C_TRIAL_1660具有在对应于DELTA_D_I 645的整数值的位位置处设置的单个位。例如,“110”的DELTA_D_I 645具有整数值6。DELTA_C_TRIAL_1 660是“0100000”,其中从右边第六位设置为逻辑“1”。同样地,第二二进制加权编码器655将DATA_I 638变换为第二(2^m)-1位试验码字分量DELTA_C_TRIAL_2 664。DELTA_C_TRIAL_2664具有在对应于DATA_I的整数值的位位置处设置的单个位。
编码装置600还包括或(OR)逻辑668,该或逻辑668耦接到第一二进制加权编码器650和第二二进制加权编码器655。OR逻辑668对DELTA_C_TRIAL_1 660和DELTA_C_TRIAL_2664执行逐位OR操作,以便将DELTA_C_TRIAL_1 660和DELTA_C_TRIAL_2 664结合为试验差码字DELTA C TRIAL 672。因此,DATA I 638与DELTA D 228相结合且被编码以形成DELTA_C_TRIAL 672。DELTA_C_TRIAL 672的每个设置位表示在OLD_C 208和新的码字NEW_C之间的对应的位位置处的状态改变。
MWA编码装置600包括通信地耦接到m位模式生成器635的DELTA_C有效性测试逻辑675。DELTA_C有效性测试逻辑675确定DELTA_C_TRIAL672是否满足没有位设置在位在OLD_C中被设置的位位置处的MWA要求。DELTA_C有效性测试逻辑675对OLD_C 208与DELTA_C_TRIAL 672执行逐位比较,并且确认该比较导致全部逻辑“0”。如果是这样,则DELTA_C有效性测试逻辑675使得通过命名为“DELTA_C”680的DELTA_C_TRIAL 672能够进行存储单元的集合中的OLD_C 208的更新。如果DELTA_C有效性测试逻辑675确定DELTA_C_TRIAL 672不满足MWA要求,则从模式生成器635请求不同的DATA_I 638,以便生成不同的DELTA_C_TRIAL672。因此,MWA编码装置600在数据字域生成试验(trial),以发现满足MWA要求的新的码字。
图7是根据各种示例方法和实施例图示说明基于模式生成器的半导体存储器单元MWA编码装置700的框图。MWA编码装置700在码字域中生成试验,以发现满足MWA要求且适于要被存储的新的数据字NEW_D的新的码字。
MWA编码装置700包括码字差模式生成器705。码字差模式生成器705生成试验差码字DELTA_C_TRIAL 708A。DELTA_C_TRIAL 708A的每个设置位表示在当前存储在半导体存储器阵列205中的存储单元的子集中的现有的(2^m)-1位宽MWA码字OLD_C 208和替代OLD_C208的新的码字NEW_C之间对应的位位置处的状态改变。OLD_C表示现有的m位数据字OLD_D;并且NEW_C表示要被存储的新的数据字NEW_D 215。应当注意,不需要顺序地或以任何特定的次序生成DELTA_C_TRIAL 708A。
编码装置700还包括有效性测试逻辑712,该有效性测试逻辑712耦接到码字差模式生成器705。有效性测试逻辑712确定DELTA_C_TRIAL 708A是否满足没有位设置在位在OLD_C 208中被设置的位位置处的第一条件。有效性测试逻辑712还确定DELTA_C_TRIAL708A是否满足可解码为对应于NEW_D 215的新的试验数据字(“NEW_D_TRIAL”)720的第二条件。如果满足第一条件和第二条件二者,则有效性测试逻辑712还通过等于DELTA_C_TRIAL708B的DELTA_C 250使能够对OLD_C 208更新。
有效性测试逻辑712包括第一DELTA_C有效性测试逻辑725,该第一DELTA_C有效性测试逻辑725耦接到码字差模式生成器705。第一DELTA_C有效性测试逻辑725接收DELTA_C_TRIAL 708A和OLD_C 208。第一DELTA_C有效性测试逻辑725对DELTA_C_TRIAL 708A和OLD_C208执行逐位比较操作。如果在任何位位置处的位在DELTA_C_TRIAL 708A和在OLD_C 208二者中被设置,则第一DELTA_C有效性测试逻辑725从模式生成器请求不同的DELTA_C_TRIAL708A。
MWA编码装置700的有效性测试逻辑712还包括或(OR)逻辑730,该OR逻辑730被耦接到第一DELTA_C有效性测试逻辑725。OR逻辑730接收DELTA_C_TRIAL 708B和OLD_C 208,并且经由逐位逻辑或操作将DELTA_C_TRIAL 708B和OLD_C 208结合。试验码字NEW_C_TRIAL735由该结合产生。
MWA编码装置700的有效性测试逻辑712还包括MCRA解码器220,该MCRA解码器220被耦接到或逻辑730。MCRA解码器220接收NEW_C_TRIAL 735,并且对NEW_C_TRIAL 735解码,产生如先前在有效性测试逻辑712的概述的上下文中所提到的NEW_D_TRIAL 720。
MWA编码装置700的有效性测试逻辑712包括耦接到MCRA解码器220的第二DELTA_C有效性测试逻辑745。第二DELTA_C有效性测试逻辑745接收NEW_D_TRIAL 720和NEW_D 215,并且对NEW_D_TRIAL 720和NEW_D 215执行逐位比较操作。如果NEW_D_TRIAL 720不等于NEW_D215,则第二DELTA_C有效性测试逻辑745从模式生成器请求不同的DELTA_C_TRIAL708A。
不等于NEW_D 215的NEW_D_TRIAL 720的状态是一种指示,即虽然如通过第一DELTA_C有效性测试逻辑725确定的,通过没有位设置在与OLD_C208中设置位的位置相同的位置中,DELTA_C_TRIAL 708B满足MWA有效性要求,但是DELTA_C_TRIAL 708B根本不对应于要被存储的新的数据字NEW_D 215。
MWA编码装置700的有效性测试逻辑712还包括DELTA_C使能逻辑750,该DELTA_C使能逻辑750被耦接到第二DELTA_C有效性测试逻辑745。DELTA_C使能逻辑750接收当NEW_D_TRIAL 720等于NEW_D 215时来自第二DELTA_C有效性测试逻辑745的指示,并且在该情况下,DELTA_C使能逻辑750使DELTA_C 250能够被写入存储器阵列205中的存储单元的子集。
本文所描述的装置和方法在除了对要被写入存储器阵列的数据字编码之外的应用中可以是有用的。本文所描述的装置200、装置400、装置600和装置700的示例旨在提供对各种实施例的结构的一般理解。它们不旨在作为可能使用这些示例结构和序列的装置、系统和方法的全部元件和特征的完整的描述。
本文所描述的实施例和方法以这样的方式对要被写入半导体存储器阵列的数据字进行编码,以避免尝试已经写入的存储器存储单元的重写。这样做可以减少由WOM存储技术的过驱动或过充电存储单元元件导致的不稳定性,和/或通过减少大块/块擦除和重写,可以增加可重写存储器类型的整体总寿命写操作。可以导致较高的设备可靠性和较低的成本。
通过图示说明而非限制的方式,附图示出其中可以实践主题的具体实施例。应当注意,在连接线的一端或两端处的箭头旨在示出电流量、数据流、逻辑流等的大体方向。连接器线箭头并不旨在限制这样的流为特定的方向,诸如排除在相反方向上的任何流。足够详细地描述了所示出的实施例,以使本领域技术人员能够实践本文所公开的教导。可以使用其它实施例并且由此得出其它实施例,使得可以进行结构替代和结构改变与逻辑替代和逻辑改变,而不脱离本公开的保护范围。因此,该详细的说明书不具有限制意义。由随附权利要求和这样的权利要求被赋予到的等同物的全部范围来限定各种实施例的广度。
本发明主题的此类实施例在本文中可以被单独称为或统称为术语“发明”以仅为了方便,而不旨主动将本申请限制到任何单个发明或发明概念(如果实际上公开了一个以上的发明或发明概念)。因此,虽然本文中已经示出和描述具体实施例,但是计划实现相同目的的任何布置均可替代示出的具体实施例。本公开旨在覆盖各种实施例的任何和全部改编或变型。
为了符合37C.F.R.§1.72(b),提供了说明书摘要,37C.F.R.§1.72(b)要求将允许读者快速确知技术公开的本质的摘要。可以理解,摘要将不用于解释或限制权利要求的保护范围或含义。在前述的详细的说明书中,为了精简本公开,各种特征被组合在单个实施例中。这种公开的方法不应被解释为要求比在每个权利要求中明确列举的特征更多的特征。相反,发明的主题可以存在于少于单个公开的实施例的全部特征。从而,所附权利要求被并入到详细的说明书中,其中每个权利要求本身作为单独的实施例。

Claims (20)

1.一种半导体存储器单元多写避免编码装置,即半导体存储器单元MWA编码装置,其包括:
存储器单元复位避免解码器,即MCRA解码器,其接收来自半导体存储器阵列中的存储单元的子集的现有的(2^m)-1位宽MWA码字(“OLD_C”),所述OLD_C表示现有的m位数据字(“OLD_D”),所述MCRA解码器对所述OLD_C解码以确定所述OLD_D;
二维增量编码查找表,即二维增量编码LUT,其通信地耦接到所述MCRA解码器以由DELTA_D进行索引,所述DELTA_D是m位字,所述DELTA_D的每个设置位表示在所述OLD_D和要被编码为NEW_C且被存储在所述半导体存储阵列中的所述存储单元的子集中的NEW_D之间的对应的位位置处的状态改变,增量编码LUT存储对应于每个可能的DELTA_D的多个潜在的差码字DELTA_C(I),每个DELTA_C(I)的每个设置位表示在所述OLD_C和所述NEW_C之间对应的位位置处的状态改变,所述多个差码字DELTA_C(I)中的至少一个满足没有位设置在位在所述OLD_C中被设置的位位置处的MWA要求;以及
DELTA_C有效性测试和选择逻辑,其通信地耦接到所述增量编码LUT,以确定如果有所述DELTA_C(I),所述DELTA_C(I)中的哪些满足所述MWA要求,并且以使得通过满足所述MWA要求且被命名为“DELTA_C”的所述DELTA_C(I)中的选择的一个,能够进行存储单元的集合中的OLD_C的更新。
2.根据权利要求1所述的半导体存储器单元MWA编码装置,还包括:
所述DELTA_C有效性测试和选择逻辑的与逻辑部分,所述与逻辑部分接收所述OLD_C和所述DELTA_C(I)字中的每个,并且通过确认所述OLD_C与每个DELTA_C(I)的逐位比较结果是全部逻辑“0”,测试所述DELTA_C(I)字中的每个。
3.根据权利要求2所述的半导体存储器单元MWA编码装置,所述MCRA解码器还包括:
数据字生成器,所述数据字生成器生成一系列m位数据字D,每个数据字具有从K=1到K=2^m-1的二进制加权值K;
数据字索引生成器,所述数据字索引生成器生成从i=0到i=m-1的一系列数据字位位置索引i;
数据位索引器,所述数据位索引器被耦接到所述数据字索引生成器并且被耦接到所述数据字生成器,以接收来自所述数据字索引生成器的所述索引i的当前值,并且接收来自所述数据字生成器的所述数据字K的当前值,并且输出当前K,B(K,i)的第i位的状态;
码位索引器,所述码位索引器被耦接到所述数据字生成器以接收所述当前K,并且所述码位索引器被耦接到解码器输入终端以接收要被解码的码字C,所述码位索引器输出C,C(K-1)的第(K-1)位的状态;以及
交叉异或逻辑,所述交叉异或逻辑被通信地耦接到所述数据位索引器并且被通信地耦接到所述码位索引器,以针对每个i对B(K,i)和C(K-1)都是逻辑“1”的全部位执行异或操作,以便生成解码的数据字D的对应的位D(i)。
4.根据权利要求3所述的半导体存储器单元MWA编码装置,所述MCRA解码器还包括:
与逻辑,所述与逻辑被耦接到所述数据位索引器并且被耦接到所述码位索引器,以确定针对每个K和每个i是否位B(K,i)和C(K-1)都被设置;
交叉位缓冲器,所述交叉位缓冲器被耦接到所述码位索引器,以如果位B(K,i)和C(K-1)都被设置,则针对当前i的每个K存储(K-1);以及
存储逻辑,所述存储逻辑被耦接到所述与逻辑,以触发存储操作。
5.根据权利要求3所述的半导体存储器单元MWA编码装置,所述MCRA解码器还包括:
数据值跟踪逻辑,所述数据值跟踪逻辑被耦接到所述数据字生成器,以确定当i被设置为当前值时是否已经生成全部可能的数据字,如果针对i的当前值没有生成全部可能的数据字,则请求下一个K,并且如果当i被设置为所述当前值时已经生成全部可能的数据字,则启动所述异或操作;以及
数据字索引跟踪逻辑,所述数据字索引跟踪逻辑被耦接到所述数据字索引生成器,以确定在异或操作之后是否已经生成i的全部值,如果没有生成i的全部值,则请求下一个i,并且如果已经生成i的全部值,则终止解码。
6.根据权利要求2所述的半导体存储器单元MWA编码装置,通过利用最多两个设置的位生成(2^m-1)位字的全部位组合以创建LUT DELTA_C(I)值,在编码之前的时刻处使用离线MCRA解码器对每个LUT DELTA_C(I)值解码,以确定对应于每个LUT DELTA_C(I)值的LUTDELTA_D值,并且在所述LUT中将所述LUT DELTA_D值与对应的LUT DELTA_C(I)值相关联来确定所述增量编码LUT中的项目。
7.根据权利要求2所述的半导体存储器单元MWA编码装置,还包括:
m位宽异或逻辑,即m位宽XOR逻辑,所述m位宽XOR逻辑被耦接到所述MCRA解码器,以接收所述OLD_D和所述NEW_D,并且对所述OLD_D和所述NEW_D执行逐位XOR操作,以便创建所述DELTA_D。
8.根据权利要求6所述的半导体存储器单元MWA编码装置,还包括:
表查找逻辑,所述表查找逻辑被耦接到所述XOR逻辑,以接收所述DELTA_D,并且使用所述DELTA_D对来自表的所述多个潜在的MWA码字DELTA_C(I)编索引。
9.一种半导体存储器单元多写避免编码装置,即半导体存储器单元MWA编码装置,其包括:
存储器单元复位避免解码器,即MCRA解码器,所述MCRA解码器接收来自半导体存储器阵列中的存储单元的子集的现有的(2^m)-1位宽MWA码字(“OLD_C”),OLD_C表示现有的m位数据字(“OLD_D”),所述MCRA解码器对OLD_C解码以确定OLD_D;
m位模式生成器,所述m位模式生成器通信地耦接到所述MCRA解码器,以生成中间数据字(“DATA_I”),DATA_I与数据差字DELTA_D相结合,并且所述DATA_I被编码以形成试验差码字(“DELTA_C_TRIAL”),所述DELTA_D是m位字,所述DELTA_D的每个设置位表示在所述OLD_D和要被编码为NEW_C且被存储在所述半导体阵列中的所述存储单元的子集中的NEW_D之间的对应的位位置处的状态改变,所述DELTA_C_TRIAL的每个设置位表示在所述OLD_C和所述NEW_C之间的对应的位位置处的状态改变;以及
DELTA_C有效性测试逻辑,所述DELTA_C有效性测试逻辑通信地耦接到所述m位模式生成器,以通过对所述OLD_C和所述DELTA_C_TRIAL执行逻辑与操作,来确定所述DELTA_C_TRIAL是否满足没有位设置在位在所述OLD_C中被设置的位位置处的MWA要求,从而如果所述DELTA_C_TRIAL满足所述MWA要求,则通过被命名为“DELTA_C”的所述DELTA_C_TRIAL使得能够进行存储单元的集合中的OLD_C的更新,并且如果所述DELTA_C_TRIAL不满足所述MWA要求,则请求所述m位模式生成器的不同的DATA_I,以便生成不同的DELTA_C_TRIAL。
10.根据权利要求9所述的半导体存储器单元MWA编码装置,还包括:
第一m位宽异或逻辑,即第一m位宽XOR逻辑,所述第一m位宽XOR逻辑被耦接到所述MCRA解码器,以接收所述OLD_D和所述NEW_D,并且对所述OLD_D和所述NEW_D执行逐位XOR操作,以便创建所述DELTA_D。
11.根据权利要求10所述的半导体存储器单元MWA编码装置,还包括:
第二m位异或逻辑,所述第二m位异或逻辑被耦接到所述第一m位异或逻辑并且被耦接到所述m位模式生成器,以接收所述DELTA_D和所述DATA_I,并且对所述DELTA_D和所述DATA_I执行逐位异或操作,以便创建中间数据差字(“DELTA_D_I”)。
12.根据权利要求11所述的半导体存储器单元MWA编码装置,还包括:
第一二进制加权编码器,所述第一二进制加权编码器将所述m位DELTA_D_I变换成第一(2^m)-1位试验码字分量DELTA_C_TRIAL_1,所述DELTA_C_TRIAL_1具有在对应于所述DELTA_D_I的整数值的位位置处设置的单个位。
13.根据权利要求12所述的半导体存储器单元MWA编码装置,还包括:
第二二进制加权编码器,所述第二二进制加权编码器将所述m位DATA_I变换成第二(2^m)-1位试验码字分量DELTA_C_TRIAL_2,所述DELTA_C_TRIAL_2具有在对应于所述DATA_I的整数值的位位置处设置的单个位。
14.根据权利要求13所述的半导体存储器单元MWA编码装置,还包括:
或逻辑,所述或逻辑被耦接到所述第一二进制加权编码器和所述第二二进制加权编码器,以对所述DELTA_C_TRIAL_1和所述DELTA_C_TRIAL_2执行逐位或操作,以便将所述DELTA_C_TRIAL_1和所述DELTA_C_TRIAL_2相结合,以形成所述DELTA_C_TRIAL。
15.一种半导体存储器单元多写避免编码装置,即半导体存储器单元MWA编码装置,其包括:
码字差模式生成器,所述码字差模式生成器生成试验差码字DELTA_C_TRIAL,所述DELTA_C_TRIAL的每个设置位表示在当前被存储在半导体存储器阵列中的存储单元的子集中的现有的(2^m)-1位宽MWA码字(“OLD_C”)和替代OLD_C的新的码字(“NEW_C”)之间对应的位位置处的状态改变,OLD_C表示现有的m位数据字(“OLD_D”),并且NEW_C表示要被存储的新的数据字(“NEW_D”);以及
有效性测试逻辑,所述有效性测试逻辑被耦接到所述码字差模式生成器,以对所述OLD_C和所述DELTA_C_TRIAL执行逐位比较操作,以确定所述DELTA_C_TRIAL是否满足没有位设置在位在所述OLD_C中被设置的位位置处的第一条件,以及是否满足解码成对应于所述NEW_D的新的试验码字(“NEW_D_TRIAL”)的第二条件,如果满足所述第一条件和所述第二条件两者,则所述有效性测试逻辑还通过等于DELTA_C_TRIAL的DELTA_C使得能够对所述OLD_C进行更新。
16.根据权利要求15所述的半导体存储器单元MWA编码装置,所述有效性测试逻辑还包括:
第一DELTA_C有效性测试逻辑,所述第一DELTA_C有效性测试逻辑被耦接到所述码字差模式生成器,以接收所述DELTA_C_TRIAL,所述第一DELTA_C有效性测试逻辑还接收所述OLD_C,并且对所述DELTA_C_TRIAL和所述OLD_C执行逐位比较操作,并且如果在任何位位置处的位在所述DELTA_C_TRIAL和所述OLD_C两者中被设置,则从所述模式生成器请求不同的DELTA_C_TRIAL。
17.根据权利要求16所述的半导体存储器单元MWA编码装置,所述有效性测试逻辑还包括:
或逻辑,所述或逻辑被耦接到所述第一DELTA_C有效性测试逻辑,以接收所述DELTA_C_TRIAL,所述或逻辑还接收所述OLD_C,并且经由逻辑或操作将所述DELTA_C_TRIAL和所述OLD_C相结合,以生成试验码字NEW_C_TRIAL。
18.根据权利要求17所述的半导体存储器单元MWA编码装置,所述有效性测试逻辑还包括:
存储器单元复位避免解码器,即MCRA解码器,所述MCRA解码器被耦接到所述或逻辑,以接收所述NEW_C_TRIAL,并且对所述NEW_C_TRIAL解码以生成试验新的数据字(“NEW_D_TRIAL”)。
19.根据权利要求18所述的半导体存储器单元MWA编码装置,所述有效性测试逻辑还包括:
第二DELTA_C有效性测试逻辑,所述第二DELTA_C有效性测试逻辑被耦接到所述MCRA解码器,以接收所述NEW_D_TRIAL和所述NEW_D,以对所述NEW_D_TRIAL和所述NEW_D执行逐位比较操作,并且如果所述NEW_D_TRIAL不等于所述NEW_D,则从所述模式生成器请求不同的DELTA_C_TRIAL。
20.根据权利要求19所述的半导体存储器单元MWA编码装置,所述有效性测试逻辑还包括:
DELTA_C使能逻辑,所述DELTA_C使能逻辑被耦接到所述第二DELTA_C有效性测试逻辑,以当所述NEW_D_TRIAL等于所述NEW_D时,接收来自所述第二DELTA_C有效性测试逻辑的指示,并且如果所述NEW_D_TRIAL等于所述NEW_D,则使得DELTA_C能够被写入所述存储器阵列中的所述存储单元的子集中。
CN201610656244.4A 2015-08-12 2016-08-11 半导体存储器单元多写避免编码装置、系统和方法 Active CN106448732B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/824,935 2015-08-12
US14/824,935 US9715943B2 (en) 2015-08-12 2015-08-12 Semiconductor memory cell multi-write avoidance encoding apparatus, systems and methods

Publications (2)

Publication Number Publication Date
CN106448732A true CN106448732A (zh) 2017-02-22
CN106448732B CN106448732B (zh) 2021-09-07

Family

ID=57995944

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610656244.4A Active CN106448732B (zh) 2015-08-12 2016-08-11 半导体存储器单元多写避免编码装置、系统和方法

Country Status (2)

Country Link
US (1) US9715943B2 (zh)
CN (1) CN106448732B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020136068A1 (en) * 2000-12-20 2002-09-26 Widdershoven Franciscus Petrus Data processing device with a WOM memory
US20030026142A1 (en) * 2001-08-03 2003-02-06 Nec Corporation Semiconductor memory having a defective memory cell relieving circuit
CN1783342A (zh) * 2004-10-29 2006-06-07 国际商业机器公司 用于使用wmrm存储器实现可靠的worm存储器的系统和方法
CN101361039A (zh) * 2006-01-20 2009-02-04 松下电器产业株式会社 处理器
US20100220517A1 (en) * 2009-02-27 2010-09-02 Renesas Technology Corp. Semiconductor device
US20130283128A1 (en) * 2012-04-19 2013-10-24 Postech Academy-Industry Foundation Operating Method of Controller Controlling Nonvolatile Memory Device and Mapping Pattern Selecting Method of Selecting Mapping Pattern Mapping Polar Coded Code Word with Multi Bit Data of Nonvolatile Memory Device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10417122B2 (en) * 2015-09-30 2019-09-17 Seagate Technology Llc Data randomization using memory block access counts

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020136068A1 (en) * 2000-12-20 2002-09-26 Widdershoven Franciscus Petrus Data processing device with a WOM memory
US20030026142A1 (en) * 2001-08-03 2003-02-06 Nec Corporation Semiconductor memory having a defective memory cell relieving circuit
CN1783342A (zh) * 2004-10-29 2006-06-07 国际商业机器公司 用于使用wmrm存储器实现可靠的worm存储器的系统和方法
CN101361039A (zh) * 2006-01-20 2009-02-04 松下电器产业株式会社 处理器
US20100220517A1 (en) * 2009-02-27 2010-09-02 Renesas Technology Corp. Semiconductor device
US20130283128A1 (en) * 2012-04-19 2013-10-24 Postech Academy-Industry Foundation Operating Method of Controller Controlling Nonvolatile Memory Device and Mapping Pattern Selecting Method of Selecting Mapping Pattern Mapping Polar Coded Code Word with Multi Bit Data of Nonvolatile Memory Device

Also Published As

Publication number Publication date
CN106448732B (zh) 2021-09-07
US9715943B2 (en) 2017-07-25
US20170047130A1 (en) 2017-02-16

Similar Documents

Publication Publication Date Title
KR101438072B1 (ko) 소거 없는 플래시 메모리의 다중 프로그래밍
Jiang et al. Rank modulation for flash memories
Jiang et al. Floating codes for joint information storage in write asymmetric memories
EP2684134B1 (en) Programmable data storage management
US20050066110A1 (en) Circuit, system and method for encoding data to be stored on a non-volatile memory array
US20150058692A1 (en) Low-density parity-check decoding method and low-density parity-check decoder using the same
CN102148058A (zh) 读可靠性获得提高的含有多位存储单元的快闪存储器件
KR20070054659A (ko) 에러율을 최적화하기 위한 멀티-비트 플래시 셀의 상태인코딩
Wu Low complexity codes for writing a write-once memory twice
Li et al. A study of polar codes for MLC NAND flash memories
CN102789560B (zh) 数据存储装置、编码单元、以及包括其的系统
CN109285582A (zh) 存储器系统、非暂时性计算机可读介质及错误校验与校正的方法
US10741212B2 (en) Error correction code (ECC) encoders, ECC encoding methods capable of encoding for one clock cycle, and memory controllers including the ECC encoders
Jiang et al. Joint rewriting and error correction in write-once memories
KR102204394B1 (ko) 메모리 시스템에서의 코딩 방법 및 디코딩 방법
Jiang On the generalization of error-correcting WOM codes
US10014050B2 (en) High sum-rate write-once memory
Schoeny et al. Analysis and coding schemes for the flash normal-Laplace mixture channel
KR102414620B1 (ko) 메모리 장치의 동작 방법 및 메모리 장치를 동작시키는 메모리 컨트롤러
CN106448732A (zh) 半导体存储器单元多写避免编码装置、系统和方法
Jagmohan et al. Coding for multilevel heterogeneous memories
JP5901746B2 (ja) メモリセルをプログラミングすること
CN1409492A (zh) 纠错码电路
Parnell et al. Capacity of the MLC NAND flash channel
CN107993687A (zh) 一种存储器电路

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant