CN103136068B - 用于页复制操作的可纠错的非易失性存储器及其方法 - Google Patents
用于页复制操作的可纠错的非易失性存储器及其方法 Download PDFInfo
- Publication number
- CN103136068B CN103136068B CN201310047282.6A CN201310047282A CN103136068B CN 103136068 B CN103136068 B CN 103136068B CN 201310047282 A CN201310047282 A CN 201310047282A CN 103136068 B CN103136068 B CN 103136068B
- Authority
- CN
- China
- Prior art keywords
- page
- error
- check bit
- source page
- bit
- 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.)
- Expired - Lifetime
Links
- 230000015654 memory Effects 0.000 title claims abstract description 59
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000012937 correction Methods 0.000 title claims abstract description 28
- 230000008569 process Effects 0.000 claims abstract description 21
- 238000001514 detection method Methods 0.000 claims abstract description 5
- 230000004044 response Effects 0.000 claims description 10
- 238000012986 modification Methods 0.000 claims description 3
- 230000004048 modification Effects 0.000 claims description 3
- 238000011084 recovery Methods 0.000 claims description 3
- 230000010076 replication Effects 0.000 claims 2
- 241001269238 Data Species 0.000 claims 1
- 238000013518 transcription Methods 0.000 abstract description 8
- 230000035897 transcription Effects 0.000 abstract description 8
- 230000006870 function Effects 0.000 abstract description 5
- 238000010586 diagram Methods 0.000 description 10
- 238000012795 verification Methods 0.000 description 9
- 230000000052 comparative effect Effects 0.000 description 7
- 238000013500 data storage Methods 0.000 description 6
- 230000003139 buffering effect Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000000295 complement effect Effects 0.000 description 3
- 101100080090 Caenorhabditis elegans nlp-1 gene Proteins 0.000 description 2
- 102100040862 Dual specificity protein kinase CLK1 Human genes 0.000 description 2
- 101000749294 Homo sapiens Dual specificity protein kinase CLK1 Proteins 0.000 description 2
- 101000927076 Xenopus laevis Apoptosis regulator R11 Proteins 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 101100187124 Arabidopsis thaliana CPA gene Proteins 0.000 description 1
- 102100040844 Dual specificity protein kinase CLK2 Human genes 0.000 description 1
- 101000749291 Homo sapiens Dual specificity protein kinase CLK2 Proteins 0.000 description 1
- 101001022957 Homo sapiens LIM domain-binding protein 1 Proteins 0.000 description 1
- 101001022948 Homo sapiens LIM domain-binding protein 2 Proteins 0.000 description 1
- 102100035113 LIM domain-binding protein 2 Human genes 0.000 description 1
- 101150098960 NLP1 gene Proteins 0.000 description 1
- 101150038489 NLP2 gene Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- -1 nCLK2 Proteins 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 230000010355 oscillation Effects 0.000 description 1
- 238000004080 punching Methods 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
- For Increasing The Reliability Of Semiconductor Memories (AREA)
Abstract
公开了一种在页复制操作过程中具有错误检测和校正功能的NAND闪存。该NAND闪存可以防止从源页转录错误位到一个复制页。本发明闪存的实施例包括一个用于校正存储在页缓冲器中源数据的位错误的校正电路,一个配置得适于提供源数据到校正电路以及提供校正数据到页缓冲器的电路,和一个配置得适于复制源数据到页缓冲器、并将校正数据从页缓冲器存储到另一个页的复制电路。
Description
本申请是申请日为2004年4月5日、申请号为201110008910.0、发明名称为“用于页复制操作的可纠错的非易失性存储器及其方法”的发明专利申请的分案申请。
技术领域
本发明一般涉及非易失性闪存,更具体地,涉及具有错误校正功能的用于可靠的页复制操作的闪存及其操作方法。
背景技术
闪存一般应用于用于移动通信,游戏设置,等等中使用的电子设备的大容量存储子系统中。这种子系统通常实现为能够插到多主机系统中的可移动存储卡或实现为主机系统内不可移动的嵌入式存储器。在两种实现中,该子系统包括一个或多个快闪设备并且通常还包括一个子系统控制器。
闪存是由一个或更多个晶体管单元阵列组成,每个单元能够非易失性地存储一个或更多位的数据。因此,闪存不需要电源来保持其中被编程的数据。然而一旦被编程,一个单元在能够用新的数据值重新编程之前必须进行擦除。这些单元阵列被划分成组用于提供读、编程和擦除功能的有效实现。用于大容量存储器的典型的闪存结构是将大的单元组排列到可擦除块中。每个块进一步被划分成一个或更多个作为读和编程功能的基本单元的可寻址扇区。
闪存基本上具有它们自己的读,写(或编程),和擦除功能操作。闪存进一步扩展它们的职能来执行页复制操作(或复录操作)。该页复制操作是将存储在一个分配了特定地址的页中的数据录制到分配了另一个地址的另一个页中。在页复制过程中,存储在特定地址页中的数据被转移到一个页缓冲器,然后保留在页缓冲器中的数据被写到分配了另一个地址的另一个页中,该过程通过一个编程过程完成而不用从闪存中读出该数据。该页复制功能不需要读出要被写入的数据和从闪存的外部源下载要被写入的数据,其有利于提高与子系统控制器结合的系统数据速度。
然而,不幸的是,可能发生被复制和被写的页本身具有错误位的情况。如图1中所示,假设页PG4被复制而页PGn-3被写入,每一页都具有一个错误位,存储在页PG4中的数据被转移到页缓冲器10然后从页缓冲器10写到页PGn-3中。作为页复制操作的结果,页PGn-3中包括两个错误位。因为多数的用作卡型存储器中的子系统控制器的闪存控制器通常仅仅设计用于校正页中一位的错误,这种一页中两位的错误在磁带复录操作完成后可能不能被纠正。
虽然闪存控制器可以被装备得具有处理甚至每页具有两位的错误的错误校正功能,但它将使电路结构变得非常复杂并降低存储控制系统的操作效率。
本发明的实施例致力于解决现有技术的这些和其他局限性。
发明内容
本发明的实施例提供了一种能够通过页复制操作保持数据完整的非易失性存储器,以及其方法。这样的非易失性存储器在页复制操作过程中能防止错误位的录制。
根据本发明的一个方面,一种非易失性存储器包括:存储数据的多个页;页缓冲器,用于通过页暂时存储数据;一个电路(circuit),用于校正所述多个页的特定一页中源数据的位错误;线路(circuitry),被配置得适于提供源数据到所述电路以及用于从所述电路提供改正数据到页缓冲器;复制电路,配置得适于将源数据复制到页缓冲器并且将改正数据从页缓冲器存储到另一个页。
该电路从源数据产生新的校验位并且比较该新校验位与旧校验位。此外,该设备包括一个用于产生组成源数据的一个字节的位的列校验位的电路;以及一个用于产生源数据的字节的行校验位的电路。
在实施例中,一种非易失性存储器包括:由用于存储数据的多个页组成的一个数据域;第一电路,其配置得适于将第一校验位存储到数据域的预定区域中,该第一校验位在页的编程操作过程中被产生;页缓冲器,用于通过页暂时存储数据;第二电路,其配置得适于将存储在所述多个页的特定一页中的源数据复制到页缓冲器中;第三电路,其配置得适于从存储在页缓冲器中的源数据产生第二校验位;以及第四电路,其配置得适于响应于第一校验位和第二校验位的比较结果将源数据的改正数据转移到页缓冲器。进一步包括一个用于将保留在页缓冲器中的改正数据存储到所述多个页的另外一页中的第五电路。
在实施例中,一种将特定页的源数据转移到具有通过页暂存数据的页缓冲器的非易失性存储器中的另一页的方法,该源数据包含旧校验位,该方法包括下面步骤:存储源数据到页缓冲器;从存储在页缓冲器中的源数据产生新校验位;比较该旧校验位与该新校验位;响应于比较结果创建源数据的修改后的数据;以及通过页缓冲器将修改后的数据移动到另一个页。根据该实施例,可以通过存储器外部的比较结果通知一个错误状况。
在该实施例中,一种非易失性存储器包括:由存储数据的多个页组成的一个数据存储域;页缓冲器,用于存储所述多个页的特定一页的数据,其与该数据存储域相连;以及与页缓冲器相连的错误校正电路包括:一个位错误检测器,其配置得适于检测特定页的数据的一个位错误;以及一个位错误校正器,其配置得适于修改位错误。该位错误检测器包括:一个用于从存储在页缓冲器中的数据创建新校验位的校验位产生器;以及一个用于通过比较数据的新校验位和旧校验位而产生错误地址信息的比较器。
位错误校正器通过参照该错误地址信息来校正数据并将修改后的数据传送到页缓冲器。该转换后的数据被转录到特定页和另一个页中。
以下通过结合附图对示范性实施例的详细描述本发明将被更好地理解。
附图说明
通过对本发明优选实施例的更详细的描述本发明的上述以及其他特征和优点将会更加明显,如附图中所示的同一附图标记指示所有不同视图的同一部分。附图不必要由比例决定,而是设置用于强调本发明的原理:
图1是显示了一个传统的与非(NAND)闪存设备中页复制备份特征的框图。
图2是显示了根据本发明的实施例具有错误校正的页复制备份特征的框图。
图3是显示了根据本发明的实施例一个错误校正电路的框图。
图4是显示了用于在页缓冲器和图3的错误校正电路之间执行数据传输的门电路的电路图。
图5是在页缓冲器和图3的错误校正电路之间数据传输的时序图。
图6是显示了根据本发明的实施例产生列和行校验位的程序的表格。
图7是显示了用于产生图6所示的列校验位的电路的电路图。
图8是显示了用于产生图6所示的行校验位的电路的电路图。
图9是在页缓冲器与错误校正电路之间的数据传输中使用的信号的时序图。
具体实施方式
将被理解的是优选实施例的描述仅仅是说明性的而并不是用于限定意义的。在下面的详细描述中,许多具体细节被说明用于提供对本发明更彻底的理解。然而,显而易见的是,即使没有这些具体细节对于本领域的技术人员而言本发明也是可以被实施的。
应用于本发明的闪存被体现在一NAND闪存上,适于嵌入在便携式电子设备中例如集成电路卡,其中许多的存储单元以串的模式被排列,这些串耦合到以行和列的矩阵布置的多个字线和位线。
根据本发明的实施例NAND闪存具有一个被分为由地址指定的多个页的存储单元阵列。每一页由耦合到一个字线和一个个地耦合到多个位线的数个存储单元构成。该页是读和写的单位。
根据本发明的实施例NAND闪存被设计用于执行如下功能操作,例如擦除以删除存储在存储单元中的数据,编程以在存储单元中写数据,从存储器中读出数据(也就是,一个读出操作),在完成擦除和编程后验证以检查存储单元状态,以及页复制以不使用读出操作而将一页中的数据录制到另一页中。
根据本发明的实施例NAND闪存包括一个用于暂时存储在编程,读出或页复制操作过程中要从存储单元读出的或从存储器外部下载的数据的页缓冲器电路。还包括用于选择具有从外部供给地址的页或存储单元的缓冲器和解码器,用于检测数据值的读出放大器,用于从/到存储单元阵列转移数据到/从输入/输出信道的门线路,和用于管理其中的操作的控制电路。
本发明的实施例包括一个与页复制功能结合的错误校正操作。
在该实施例中,术语“读出”用于指从存储器中读出数据的操作,也就是数据从存储器单元中移出存储器的状态。术语“复制”用于指转移特定页的数据到页缓冲器中的操作,以及“转录”用于指将保持在页缓冲器中的数据移动到另一个页中的操作。此外,“源数据”用于指具有错误位的被复制的数据,“修正(或纠正或改正)数据”用于指没有错误位的被转录的数据。
现在,结合图2至图9解释本发明的实用实施例。
图2显示了根据本发明的实施例在页复制操作模式过程中校正一个位错误的示意特征。首先,存储在,例如,页PG4中的数据,即源数据,通过读操作(该读操作与用在当前说明中其他处的读出操作不同)被加载到页缓冲器10中,这被称为“复制”操作。存储在页缓冲器10中的该数据,也就是,页PG4的源数据(下文所指的“源页”)在它们被写入到另一页(例如,PGn-3;下文称为“转录页”)之前被输入到错误校正电路20来修正包含在源数据中的一个位错误。由错误校正电路20修改后的数据被转移回页缓冲器10中然后写入到页PGn-3中。结果,页PGn-3可以确保源数据中不包含错误位,防止通过源数据转录错误位。
即使将被转录的页PGn-4有自己的错误位,已知的错误校正功能可以修改其中单个的位错误。有关页复制操作过程中错误校正过程的细节将在下文中描述。
图3显示了在页复制操作过程中用于处理错误校正的功能结构。参照图3,一旦暂时存储在页缓冲器10中的源数据De被提供给错误校正电路20时,比较器50比较旧校验位OP和在复制操作过程中由校验位产生器40产生的新校验位NP,该旧校验位是在先前的编程(或写)循环过程中被创建并且被存储在存储器的预定域中。该新校验位NP是用于校正一个位错误的校验数据,也就是在页复制操作过程中由源数据产生的一个累进位错误。该旧校验位和新校验位,OP和NP,通过相同的方式被产生。在比较了该旧校验位OP与该新校验位NP之后,涉及累进位错误的页地址的信息信号Ae由比较器50产生。该错误的地址信息信号Ae应用于一个错误校正逻辑电路60来修改该位错误。改正数据Dc与控制信号CNT一起从错误校正逻辑电路60转移到页缓冲器10。校验位产生和比较的细节将在下文进行描述。
图4是锁存和列解码块LDB0~LDBm-1的电路图,该锁存和列解码块LDB0~LDBm-1被安排在页缓冲和读出(sensing)逻辑块12(包括在页缓冲器10中)与输入/输出线I/O0~I/On-1之间,用于转移源数据和校正数据。参照图4,分配到特定地址的源页(例如,PG4)的源数据通过每个都与输入/输出线I/O0~I/On-1相对应的锁存和列解码块LDB0~LDBm-1从页缓冲和读出块12转移到错误校正电路20。该锁存和列解码块LDB0~LDBm-1同样通过页缓冲和读出块12转移由错误校正电路20提供的改正数据Dc到转录页(例如,PGn-1)。
源页PG4的源数据De通过页缓冲和检测块12读出并被存储到每个与位线BL0~BLn-1相对应的锁存器LCH0~LCHn-1中。响应于列门信号YA0~YAn-1(主要的)和YB0~YBk-1(次要的)暂留在存储器LCH0~LCHn-1中的源数据顺序地以位为单位通过列门(或Y-门)AG0~AGn-1和BG0~BGk-1转移到输入/输出线I/O0~I/On-1,如图5中所示,其可以被称作“错误数据输出”的操作状态。例如,当列门信号YA0和YB0都处于高电平有效时,与位线BL0相对应的源数据位通过输入/输出线I/O0被转移到错误校正电路20。
改正数据Dc通过输入/输出线I/O0~I/On-1从错误校正电路20转移到每个都与位线BL0~BLn-1相连接的锁存器LCH0~LCHn-1,其可以被称为“改正数据的输入”的操作状态。例如,当列门信号YA0和YB0都处于高电平有效时,与位线BL0相对应的改正数据位通过输入/输出线I/O0转移到页缓冲器10(也就是,页缓冲和读出块12)。经由编程过程暂时存储在锁存器中的改正数据Dc被写入到转录页PGn-1中。
图6显示了根据本发明的实施例产生新校验位NP的一个实用方式。先前存储在存储器预定域中的旧校验位OP是由一个在先的编程操作产生的。用于产生校验位的已知技术被简单划分为两种方式:一种是串行方式,另一种是并行方式。本发明的实施例使用该串行方式用以节省拓扑电路区域,但两种中的另一种实施方式也是可接受的。
说明从中建立校验位的源数据De由8位的512字节组成,该校验位被分类为列校验位和行校验位。列校验位由一个字节的8位而获得,而行校验位由512字节获得。
列校验位和行校验位可以由图7和图8中分别所示的电路构成,两个电路都包括在图4所示的校验位产生器40中。列校验位和行校验位的产生是通过处理具有二进制组合的异或(XOR)逻辑链来完成的,用以从位或字节包中获得一个位错误。
现在参照图6和图7以b及下面的表1来描述关于从8位b0-b7创建列校验位的过程。
[表1]
字符“*”代表从相关位的结合获得比较结果的XOR运算符。因此,XOR逻辑完整的运算等式在下面被总结,每一个用于6位的列校验位。
CP1=b7*b5*b3*b1
nCP1=b6*b4*b2*b0
CP2=b7*b6*b3*b2
nCP2=b5*b4*b1*b0
CP4=b7*b6*b5*b4
nCP4=b3*b2*b1*b0
参照图7,为产生每个列校验位而执行的算法结合与4个XOR门XR和一个触发器FF相关。每个输入/输出线与每个数据位相对应。列校验位nCP4从接收XOR门XR19的输出的触发器FF6产生。门XR19接收XOR门XR13的输出和从触发器FF6反馈的列校验位nCP4。门XR13接收XOR门XR1和XR2的输出。输入/输出线I/O2和I/O3与门XR2的输入端连接,而输入/输出线I/O0和I/O1与门XR1的输入端连接。与nCP4互补的列校验位CP4是由接收XOR门XR20的输出的触发器FF5产生。门XR20接收XOR门XR14的输出和从触发器FF5反馈的列校验位CP4。门XR14接收XOR门XR3和XR4的输出。输入/输出线I/O4和I/O5与门XR3的输入端连接,而输入/输出线I/O6和I/O7与门XR4的输入端连接。
列校验位nCP2是由接收XOR门XR21的输出的触发器FF4产生。门XR21接收XOR门XR15的输出和从触发器FF4反馈的列校验位nCP2。门XR15接收XOR门XR5和XR6的输出。输入/输出线I/O0和I/O1与门XR5的输入端连接,而输入/输出线I/O4和I/O5与门XR6的输入端连接。与nCP2互补的列校验位CP2是由接收XOR门XR22的输出的触发器FF3产生。门XR22接收XOR门XR16的输出和从触发器FF3反馈的列校验位CP2。门XR16接收XOR门XR7和XR8的输出。输入/输出线I/O2和I/O3与门XR7的输入端连接,而输入/输出线I/O6和I/O7与门XR8的输入端连接。
列校验位nCP1是由接收XOR门XR23的输出的触发器FF2产生。门XR23接收XOR门XR17的输出和从触发器FF2反馈的列校验位nCP1。门XR17接收XOR门XR9和XR10的输出。输入/输出线I/O0和I/O2与门XR9的输入端连接,而输入/输出线I/O4和I/O6与门XR10的输入端连接。与nCP2互补的列校验位CP1是由接收XOR门XR24的输出的触发器FF1产生。门XR24接收XOR门XR18的输出和从触发器FF1反馈的列校验位CP1。门XR18接收XOR门XR11和XR12的输出。输入/输出线I/O1和I/O3与门XR11的输入端连接,而输入/输出线I/O5和I/O7与门XR12的输入端连接。
时钟信号CLK和复位信号RST共同应用于触发器FF1~FF6。因此,触发器FF1~FF6响应于时钟信号CLK每个循环的上升沿输出列校验位。到位于其对应触发器之前的XOR门的每个列校验位的反馈输入(例如,NCP4从FF6到XR19)用于检测源数据中当前位和下一位之间的变化(也就是,检测在页复制操作过程中的累进位错误)然后采用产生校验位的串行方式来管理它。
作为产生列校验位的一个实用的例子,列校验位CP1,CP2和nCP4被设置为“1”,假设位b3为一个错误位。
从512字节产生行校验位将参照图6和图8以及下面的表2进行描述。表2安排了用于XOR算法实现的字节结合以获得与源数据的512字节相对的行校验位LP1,nLP1,LP2,nLP2,LP4,nLP4…,LP512和nLP512(LP1~nLP512;18位)。
[表2]
在表2中,字符“*”表示由相应位的结合获得比较结果的XOR运算符,而“^B”表示用于它们相对应字节的8位的XOR操作的结果(例如,在第512字节个中^B512=b7*b6*b5*b4*b3*b2*b1*b0)。因子^B在下文中被称作“字节校验单元”。因此,表2中XOR逻辑的完整的运算等式在下面被总结,每一个用于18位的行校验位。
LP1=^B512*^B510*…*^B256*^B254*…*^B4*^B2
nLP2=^B511*^B509*…*^B255*^B253*…*^B3*^B1
LP2=^B512*^B511*…*^B256*^B255*…*^B4*^B3
nLP2=^B510*^B509*…*^B254*^B253*…*^B2*^B1
LP4=^B512*^B511*^B510*^B509*…*^B256*^B255*
^B254*^B253*…*^B8*^B7*^B6*^B5
nLP4=^B508*^B507*^B506*^B505*…*^B252*^B251*
^B250*^B249*…*^B4*^B3*^B2*^B1
………………
LP512=^B512*^B511*^B510*^B509*…*^B260*^B259
*^B258*^257
nLP512=^B256*^B255*^B254*^B253*…*^B4*^B3
*^B2*^B1
参照图8,用于每个字节的字节校验单元^B通过XOR门XR31~XR37首先获得。字节校验单元^B由门XR37产生。门XR37接收门XR35和XR36的输出。门XR35接收门XR31和XR32的输出,而门XR36接收门XR33和XR34的输出。门XR31的输入端与输入/输出线I/O0和I/O1连接,而门XR32的输入端与输入/输出线I/O2和I/O3连接。门XR33的输入端与输入/输出线I/O4和I/O5连接,而门XR34的输入端与输入/输出线I/O6和I/O7连接。
门XR37的输出,^B,分为18条路线用于产生18个行校验位LP1~nLP512,共同地施加到NAND门ND1~ND18的输入端。如果与它们对应字节的8位中有错误位,该字节校验单元^B被设置为“1”。NAND门ND1~ND18每一个响应时钟控制信号nCLK1,CLK1,nCLK2,CLK2,…,nCLK512和CLK512(nCLK1~CLK512;18ea)来控制从字节校验单元^B到行校验位的位路径。NAND门ND1~ND18的输出端与XOR门XR1~XR18的输入端分别连接。门XR1~XR18还分别接收从接收门XR1~XR18的输出的触发器FF1~FF18反馈到此的行校验位NLP1~LP18。
由于时钟信号CLK和复位信号RST共同施加于触发器FF1~FF18,触发器FF1~FF18响应于时钟信号CLK每个周期的上升沿输出行校验位。到位于其对应触发器之前的XOR门的每个列校验位的反馈输入例如,LP512从FF1018到XR1018)用于检测源数据中当前位和下一位之间的变化(也就是,用于检测在页复制操作过程中的累进位错误)然后采用产生行校验位的串行方式来管理它。作为行校验位产生的实用的例子,如果字节B3有一个错误位,行校验位nLP1,LP2,nLP4,…,nLP512将被设置为“1”。
图9的时序图显示了用于从页缓冲器10到错误校正电路20转移源数据的列门信号和时钟控制信号的脉冲状态,与图4至图8中电路的操作相结合。图9中所示的传输过程示例性地通过图4中所示的锁存和列解码块LDB1执行。
参照图9,由于对于次要的列门信号YB0处于高电平使能状态主要的列门信号YA0~YAn-1连续的处于高电平有效状态,与位线BL0~BLn-1相对应的数据位通过其对应的输入/输出线I/O0~I/On-1被顺序地转移到错误校正电路20。通过相同的方式,根据对于次要的列门信号YB0~YBk-1的每一个有效状态的主要的列门信号YA0~YAn-1的顺序有效状态,源数据的所有512字节通过输入/输出线I/O0~I/ON-1被转移到错误校正电路20。
在错误校正电路20中,响应于时钟信号CLK的周期振荡,图7中所示的列校验位产生器的触发器FF1~FF6输出列校验位CP1~nCP4。同时,从时钟信号CLK分离出来的的时钟控制信号CLK1~nCLK512使位路径能够通过图8中所示的行校验位产生器的NAND门ND1~ND18传导,而行校验位产生器的触发器FF1~FF18输出18位的行校验位LP1~nLP512。
新校验位NP的位数是24,它是由8个列校验位CP1~nCP4和18个行校验位LP1~nLP512组成的,它与存储在闪存的预定域中的旧校验位OP相同。用于执行具有错误校正的页复制操作的完整的顺序如下所述。
首先,在编程期间产生旧校验位OP并存储在存储器的预定域中。然后,如图6至图8中所示的电路和上述的步骤产生新校验位NP。旧校验位和新校验位通过24位相互比较。
在通过校验位比较器50比较旧校验位OP与新校验位NP的过程中,如果旧校验位和新校验位的所有24位相同(也就是,旧校验位与新校验位XOR操作的结果为“0”),则认为没有错误位。另一方面,当旧校验位和新校验位之间12位(24位的一半)的比较结果为“1”时,认为有一位错误。该一位的错误由校正逻辑电路60来修改。另外,只有当24位中的一位的比较结果为“1”时,才认为是在该页被复制时源数据中已经包含的一个单独的错误。除了上述情况,其他情况的比较结果可以认为有多于两位的错误位。
这样的位错误情况可以通过用户响应于一个命令而得以识别。进一步,它可以执行转录改正数据到源页和转录页。
根据本发明的实施例,错误校正电路可以嵌入在闪存中。
如上所述,由于源页的源数据中包含的错误位在被写入到转录页之前由错误校正电路检测并修改,它可以防止源数据中的错误位被录制到转录页中。
此外,根据本发明的闪存有效的消除了在页复制操作过程中产生的一个累进位错误。
并且,根据上述的实施例,在页复制操作过程中不需要用于校正错误的缓冲部件,因为基本上在普通闪存中采用的页缓冲器,可有效地用于协助操作而不需要额外的修改。
虽然本发明的优选实施例被公开以用于说明目的,本领域的技术人员将认识到,在不脱离本发明所附权利要求中所描述的精神和范围下,各种修改,增加和替代都是可能的。
本申请要求申请日为2003年4月3日的韩国专利申请NO.2003-21114的优先权,其全部内容在这里结合作为参考。
Claims (13)
1.一种存储器系统,包括:
存储单元阵列,存储多页数据;
页缓冲器,锁存并输出从存储单元阵列的第一位置读取的源页,经由编程过程将经错误处理后的页写入存储单元阵列的第二位置;以及
错误校正电路,检测或校正通过输入/输出线从页缓冲器输出的源页的错误,并转移回页缓冲器作为经错误处理后的页,
其中,该错误校正电路包括:
校验位产生器,在复制过程中由源页产生新校验位;
比较器,比较旧检验位和新校验位,并产生涉及累进位错误的地址信息信号;和
错误校正逻辑电路,修改累进位错误,
其中,该源页包括旧校验位。
2.根据权利要求1所述的存储器系统,其中,所述页缓冲器响应于列门信号将源页转移到错误校正电路。
3.根据权利要求1所述的存储器系统,其中,所述页缓冲器包括:
读出逻辑,从存储单元阵列中读出源页;
锁存单元,具有多个锁存器,用于存储和输出从读出逻辑提供的源页;以及
列解码块,响应于列门信号通过输入/输出线将源页转移到输入/输出线。
4.根据权利要求3所述的存储器系统,其中,所述列解码块包括至少两个列门,列门响应于列门信号而将锁存单元与输入/输出线耦接。
5.根据权利要求4所述的存储器系统,其中,所述列解码块选择多个锁存器,以响应于列门信号通过输入/输出线顺序地输出源页。
6.根据权利要求5所述的存储器系统,其中,所述列门信号包括主要信号和次要信号,被配置为通过输入/输出线输出从锁存单元顺序地输出的源页。
7.根据权利要求1所述的存储器系统,其中,所述存储单元阵列是NAND闪存。
8.根据权利要求7所述的存储器系统,其中,所述存储单元阵列具有多个页,并且其中第一位置和第二位置中的每个与一页对应。
9.一种非易失性存储器系统中的复录方法,所述存储器系统包括存储单元阵列,该方法包括:
将存储单元阵列的第一位置的源页存储到页缓冲器中;
响应于列门信号,通过输入/输出线将源页从页缓冲器转移到错误校正电路;
处理源页的错误,以检测错误并当检测到错误时校正错误;
将经错误处理后的源页从错误校正电路转移回页缓冲器;以及
将经错误处理后的源页复制到存储单元阵列的第二位置,
其中,检测错误并当检测到错误时校正错误包括:
在复制过程中由源页产生新校验位;
比较旧检验位和新校验位,并产生涉及累进位错误的地址信息信号;和
修改累进位错误,
其中,该源页包括旧校验位。
10.根据权利要求9所述的复录方法,其中,所述页缓冲器包括锁存单元,用于存储源页并从错误校正电路接收经错误处理后的源页。
11.根据权利要求10所述的复录方法,其中,在将源页从页缓冲器转移到错误校正电路的步骤中,响应于列门信号通过输入/输出线将源页发送到错误校正电路。
12.根据权利要求11所述的复录方法,其中,提供列门信号以在锁存单元中选择多个锁存器,用于经由输入/输出线顺序地发送到错误校正电路,直到源页的全部数据被发送到错误校正电路为止。
13.根据权利要求9所述的复录方法,其中,在处理源页的错误的步骤中,由时钟信号来驱动错误校正电路。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020030021114A KR100543447B1 (ko) | 2003-04-03 | 2003-04-03 | 에러정정기능을 가진 플래쉬메모리장치 |
KR21114/03 | 2003-04-03 | ||
CN2004100477591A CN1551244B (zh) | 2003-04-03 | 2004-04-05 | 用于页复制操作的可纠错的非易失性存储器及其方法 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2004100477591A Division CN1551244B (zh) | 2003-04-03 | 2004-04-05 | 用于页复制操作的可纠错的非易失性存储器及其方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103136068A CN103136068A (zh) | 2013-06-05 |
CN103136068B true CN103136068B (zh) | 2017-05-31 |
Family
ID=32844907
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011100089100A Pending CN102034545A (zh) | 2003-04-03 | 2004-04-05 | 用于页复制操作的可纠错的非易失性存储器及其方法 |
CN201310047282.6A Expired - Lifetime CN103136068B (zh) | 2003-04-03 | 2004-04-05 | 用于页复制操作的可纠错的非易失性存储器及其方法 |
CN2004100477591A Expired - Lifetime CN1551244B (zh) | 2003-04-03 | 2004-04-05 | 用于页复制操作的可纠错的非易失性存储器及其方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011100089100A Pending CN102034545A (zh) | 2003-04-03 | 2004-04-05 | 用于页复制操作的可纠错的非易失性存储器及其方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2004100477591A Expired - Lifetime CN1551244B (zh) | 2003-04-03 | 2004-04-05 | 用于页复制操作的可纠错的非易失性存储器及其方法 |
Country Status (6)
Country | Link |
---|---|
US (3) | US7296128B2 (zh) |
EP (1) | EP1465203B1 (zh) |
JP (1) | JP2004311010A (zh) |
KR (1) | KR100543447B1 (zh) |
CN (3) | CN102034545A (zh) |
DE (1) | DE602004003275T2 (zh) |
Families Citing this family (130)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7881133B2 (en) * | 2003-11-11 | 2011-02-01 | Samsung Electronics Co., Ltd. | Method of managing a flash memory and the flash memory |
JP4237648B2 (ja) * | 2004-01-30 | 2009-03-11 | 株式会社東芝 | 不揮発性半導体記憶装置 |
US7466597B2 (en) * | 2004-09-09 | 2008-12-16 | Samsung Electronics Co., Ltd. | NAND flash memory device and copyback program method for same |
US7849381B2 (en) * | 2004-12-21 | 2010-12-07 | Sandisk Corporation | Method for copying data in reprogrammable non-volatile memory |
US7379368B2 (en) * | 2005-02-25 | 2008-05-27 | Frankfurt Gmbh, Llc | Method and system for reducing volatile DRAM power budget |
KR100626393B1 (ko) | 2005-04-07 | 2006-09-20 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 그것의 멀티-페이지 카피백 방법 |
KR100669352B1 (ko) | 2005-09-07 | 2007-01-16 | 삼성전자주식회사 | 카피 백 프로그램 동작 동안에 에러 검출 및 데이터 리로딩동작을 수행할 수 있는 낸드 플래시 메모리 장치 |
KR101197556B1 (ko) * | 2006-01-09 | 2012-11-09 | 삼성전자주식회사 | 불 휘발성 메모리의 프로그램 동작을 검증하는 장치 및방법, 그리고 그 장치를 포함한 메모리 카드 |
EP1808863A1 (en) * | 2006-01-16 | 2007-07-18 | Deutsche Thomson-Brandt Gmbh | Method and apparatus for recording high-speed input data into a matrix of memory devices |
JP4956230B2 (ja) * | 2006-04-10 | 2012-06-20 | 株式会社東芝 | メモリコントローラ |
JP4908083B2 (ja) * | 2006-06-30 | 2012-04-04 | 株式会社東芝 | メモリコントローラ |
JP5378664B2 (ja) * | 2006-08-28 | 2013-12-25 | 三星電子株式会社 | マルチ−ページコピーバック機能を有するフラッシュメモリー装置及びそのブロック置換方法 |
KR100755718B1 (ko) | 2006-09-04 | 2007-09-05 | 삼성전자주식회사 | 멀티 레벨 셀 플래시 메모리에서 런-타임 배드 블록 관리를위한 장치 및 방법 |
JP2008077810A (ja) * | 2006-09-25 | 2008-04-03 | Toshiba Corp | 不揮発性半導体記憶装置 |
JP4655034B2 (ja) * | 2006-12-25 | 2011-03-23 | Tdk株式会社 | メモリコントローラ及びフラッシュメモリシステム並びにフラッシュメモリの制御方法 |
KR100882841B1 (ko) * | 2007-06-19 | 2009-02-10 | 삼성전자주식회사 | 읽기 디스터번스로 인한 비트 에러를 검출할 수 있는메모리 시스템 및 그것의 읽기 방법 |
KR100898673B1 (ko) * | 2007-08-08 | 2009-05-22 | 주식회사 하이닉스반도체 | 플래시 메모리 소자 및 그 동작 방법 |
US8055852B2 (en) | 2007-08-15 | 2011-11-08 | Micron Technology, Inc. | Memory device and method having on-board processing logic for facilitating interface with multiple processors, and computer system using same |
US7822911B2 (en) * | 2007-08-15 | 2010-10-26 | Micron Technology, Inc. | Memory device and method with on-board cache system for facilitating interface with multiple processors, and computer system using same |
US8291174B2 (en) | 2007-08-15 | 2012-10-16 | Micron Technology, Inc. | Memory device and method having on-board address protection system for facilitating interface with multiple processors, and computer system using same |
KR101425957B1 (ko) * | 2007-08-21 | 2014-08-06 | 삼성전자주식회사 | 이씨씨 제어 회로 및 그것을 포함하는 멀티채널 메모리시스템 |
US9582417B2 (en) * | 2007-08-30 | 2017-02-28 | Virident Systems, Llc | Memory apparatus and methods thereof for preventing read errors on weak pages in a non-volatile memory system |
US8443260B2 (en) | 2007-12-27 | 2013-05-14 | Sandisk Il Ltd. | Error correction in copy back memory operations |
US8621138B2 (en) | 2007-12-27 | 2013-12-31 | Sandisk Enterprise Ip Llc | Flash storage controller execute loop |
US9594679B2 (en) | 2008-05-01 | 2017-03-14 | Sandisk Il Ltd. | Flash cache flushing method and system |
JP2010009141A (ja) | 2008-06-24 | 2010-01-14 | Toshiba Corp | データ転送方法 |
CN101615420B (zh) * | 2008-06-26 | 2014-01-08 | 威刚科技股份有限公司 | 具数据修正功能的闪存储存装置 |
TWI382422B (zh) * | 2008-07-11 | 2013-01-11 | Genesys Logic Inc | 根據錯誤更正碼更新快閃記憶體之資料頁面之儲存裝置與方法 |
KR101030146B1 (ko) * | 2008-08-29 | 2011-04-18 | 서울대학교산학협력단 | 페이지 버퍼를 쓰기 캐시로 이용하는 플래시 기반 저장 장치 및 이용 방법 |
US8447918B2 (en) * | 2009-04-08 | 2013-05-21 | Google Inc. | Garbage collection for failure prediction and repartitioning |
US8566507B2 (en) * | 2009-04-08 | 2013-10-22 | Google Inc. | Data storage device capable of recognizing and controlling multiple types of memory chips |
WO2010144587A2 (en) | 2009-06-12 | 2010-12-16 | Violin Memory, Inc. | Memory system having persistent garbage collection |
US8214700B2 (en) * | 2009-10-28 | 2012-07-03 | Sandisk Technologies Inc. | Non-volatile memory and method with post-write read and adaptive re-write to manage errors |
CN101699406B (zh) * | 2009-11-12 | 2011-12-14 | 威盛电子股份有限公司 | 数据储存系统与方法 |
TWI417887B (zh) * | 2009-12-02 | 2013-12-01 | Via Tech Inc | 資料儲存系統與方法 |
CN102117230B (zh) * | 2009-12-31 | 2013-01-09 | 群联电子股份有限公司 | 数据写入方法、闪存控制器与闪存储存装置 |
US8365041B2 (en) | 2010-03-17 | 2013-01-29 | Sandisk Enterprise Ip Llc | MLC self-raid flash data protection scheme |
US10026458B2 (en) | 2010-10-21 | 2018-07-17 | Micron Technology, Inc. | Memories and methods for performing vector atomic memory operations with mask control and variable data length and data unit size |
US20120110244A1 (en) * | 2010-11-02 | 2012-05-03 | Micron Technology, Inc. | Copyback operations |
JP2012133843A (ja) * | 2010-12-21 | 2012-07-12 | Toshiba Corp | 半導体記憶装置 |
US8560922B2 (en) | 2011-03-04 | 2013-10-15 | International Business Machines Corporation | Bad block management for flash memory |
US8589775B2 (en) * | 2011-03-14 | 2013-11-19 | Infineon Technologies Ag | Error tolerant flip-flops |
US20120324156A1 (en) * | 2011-06-17 | 2012-12-20 | Naveen Muralimanohar | Method and system of organizing a heterogeneous memory architecture |
US8910020B2 (en) | 2011-06-19 | 2014-12-09 | Sandisk Enterprise Ip Llc | Intelligent bit recovery for flash memory |
US8909982B2 (en) * | 2011-06-19 | 2014-12-09 | Sandisk Enterprise Ip Llc | System and method for detecting copyback programming problems |
US9158621B2 (en) | 2011-08-29 | 2015-10-13 | Sandisk Technologies Inc. | System and method of copying data |
US9058289B2 (en) | 2011-11-07 | 2015-06-16 | Sandisk Enterprise Ip Llc | Soft information generation for memory systems |
US9048876B2 (en) | 2011-11-18 | 2015-06-02 | Sandisk Enterprise Ip Llc | Systems, methods and devices for multi-tiered error correction |
US8954822B2 (en) | 2011-11-18 | 2015-02-10 | Sandisk Enterprise Ip Llc | Data encoder and decoder using memory-specific parity-check matrix |
US8924815B2 (en) | 2011-11-18 | 2014-12-30 | Sandisk Enterprise Ip Llc | Systems, methods and devices for decoding codewords having multiple parity segments |
US9223649B2 (en) * | 2012-02-15 | 2015-12-29 | Sandisk Technologies Inc. | System and method of sending correction data to a buffer of a non-volatile memory |
US8625386B2 (en) * | 2012-03-22 | 2014-01-07 | Seiko Epson Corporation | Non-volatile memory device, circuit board, printing material container and printer |
US9699263B1 (en) | 2012-08-17 | 2017-07-04 | Sandisk Technologies Llc. | Automatic read and write acceleration of data accessed by virtual machines |
US8996951B2 (en) | 2012-11-15 | 2015-03-31 | Elwha, Llc | Error correction with non-volatile memory on an integrated circuit |
US9501398B2 (en) | 2012-12-26 | 2016-11-22 | Sandisk Technologies Llc | Persistent storage device with NVRAM for staging writes |
US9239751B1 (en) | 2012-12-27 | 2016-01-19 | Sandisk Enterprise Ip Llc | Compressing data from multiple reads for error control management in memory systems |
US9612948B2 (en) | 2012-12-27 | 2017-04-04 | Sandisk Technologies Llc | Reads and writes between a contiguous data block and noncontiguous sets of logical address blocks in a persistent storage device |
US9454420B1 (en) | 2012-12-31 | 2016-09-27 | Sandisk Technologies Llc | Method and system of reading threshold voltage equalization |
US9003264B1 (en) | 2012-12-31 | 2015-04-07 | Sandisk Enterprise Ip Llc | Systems, methods, and devices for multi-dimensional flash RAID data protection |
US9214965B2 (en) | 2013-02-20 | 2015-12-15 | Sandisk Enterprise Ip Llc | Method and system for improving data integrity in non-volatile storage |
US9329928B2 (en) | 2013-02-20 | 2016-05-03 | Sandisk Enterprise IP LLC. | Bandwidth optimization in a non-volatile memory system |
US9870830B1 (en) | 2013-03-14 | 2018-01-16 | Sandisk Technologies Llc | Optimal multilevel sensing for reading data from a storage medium |
US9236886B1 (en) | 2013-03-15 | 2016-01-12 | Sandisk Enterprise Ip Llc | Universal and reconfigurable QC-LDPC encoder |
US9092350B1 (en) | 2013-03-15 | 2015-07-28 | Sandisk Enterprise Ip Llc | Detection and handling of unbalanced errors in interleaved codewords |
US9136877B1 (en) | 2013-03-15 | 2015-09-15 | Sandisk Enterprise Ip Llc | Syndrome layered decoding for LDPC codes |
US9009576B1 (en) | 2013-03-15 | 2015-04-14 | Sandisk Enterprise Ip Llc | Adaptive LLR based on syndrome weight |
US9244763B1 (en) | 2013-03-15 | 2016-01-26 | Sandisk Enterprise Ip Llc | System and method for updating a reading threshold voltage based on symbol transition information |
US9367246B2 (en) | 2013-03-15 | 2016-06-14 | Sandisk Technologies Inc. | Performance optimization of data transfer for soft information generation |
US10049037B2 (en) | 2013-04-05 | 2018-08-14 | Sandisk Enterprise Ip Llc | Data management in a storage system |
US9170941B2 (en) | 2013-04-05 | 2015-10-27 | Sandisk Enterprises IP LLC | Data hardening in a storage system |
US9159437B2 (en) | 2013-06-11 | 2015-10-13 | Sandisk Enterprise IP LLC. | Device and method for resolving an LM flag issue |
US9384126B1 (en) | 2013-07-25 | 2016-07-05 | Sandisk Technologies Inc. | Methods and systems to avoid false negative results in bloom filters implemented in non-volatile data storage systems |
US9043517B1 (en) | 2013-07-25 | 2015-05-26 | Sandisk Enterprise Ip Llc | Multipass programming in buffers implemented in non-volatile data storage systems |
US9524235B1 (en) | 2013-07-25 | 2016-12-20 | Sandisk Technologies Llc | Local hash value generation in non-volatile data storage systems |
US9639463B1 (en) | 2013-08-26 | 2017-05-02 | Sandisk Technologies Llc | Heuristic aware garbage collection scheme in storage systems |
US9361221B1 (en) | 2013-08-26 | 2016-06-07 | Sandisk Technologies Inc. | Write amplification reduction through reliable writes during garbage collection |
US9519577B2 (en) | 2013-09-03 | 2016-12-13 | Sandisk Technologies Llc | Method and system for migrating data between flash memory devices |
US9442670B2 (en) | 2013-09-03 | 2016-09-13 | Sandisk Technologies Llc | Method and system for rebalancing data stored in flash memory devices |
US9158349B2 (en) | 2013-10-04 | 2015-10-13 | Sandisk Enterprise Ip Llc | System and method for heat dissipation |
US9323637B2 (en) | 2013-10-07 | 2016-04-26 | Sandisk Enterprise Ip Llc | Power sequencing and data hardening architecture |
US9442662B2 (en) | 2013-10-18 | 2016-09-13 | Sandisk Technologies Llc | Device and method for managing die groups |
US9298608B2 (en) | 2013-10-18 | 2016-03-29 | Sandisk Enterprise Ip Llc | Biasing for wear leveling in storage systems |
US9436831B2 (en) | 2013-10-30 | 2016-09-06 | Sandisk Technologies Llc | Secure erase in a memory device |
US9263156B2 (en) | 2013-11-07 | 2016-02-16 | Sandisk Enterprise Ip Llc | System and method for adjusting trip points within a storage device |
US9244785B2 (en) | 2013-11-13 | 2016-01-26 | Sandisk Enterprise Ip Llc | Simulated power failure and data hardening |
US9152555B2 (en) | 2013-11-15 | 2015-10-06 | Sandisk Enterprise IP LLC. | Data management with modular erase in a data storage system |
US9703816B2 (en) | 2013-11-19 | 2017-07-11 | Sandisk Technologies Llc | Method and system for forward reference logging in a persistent datastore |
US9520197B2 (en) | 2013-11-22 | 2016-12-13 | Sandisk Technologies Llc | Adaptive erase of a storage device |
US9520162B2 (en) | 2013-11-27 | 2016-12-13 | Sandisk Technologies Llc | DIMM device controller supervisor |
US9280429B2 (en) | 2013-11-27 | 2016-03-08 | Sandisk Enterprise Ip Llc | Power fail latching based on monitoring multiple power supply voltages in a storage device |
US9122636B2 (en) | 2013-11-27 | 2015-09-01 | Sandisk Enterprise Ip Llc | Hard power fail architecture |
US9250676B2 (en) | 2013-11-29 | 2016-02-02 | Sandisk Enterprise Ip Llc | Power failure architecture and verification |
US9582058B2 (en) | 2013-11-29 | 2017-02-28 | Sandisk Technologies Llc | Power inrush management of storage devices |
US9092370B2 (en) | 2013-12-03 | 2015-07-28 | Sandisk Enterprise Ip Llc | Power failure tolerant cryptographic erase |
US9235245B2 (en) | 2013-12-04 | 2016-01-12 | Sandisk Enterprise Ip Llc | Startup performance and power isolation |
US9129665B2 (en) | 2013-12-17 | 2015-09-08 | Sandisk Enterprise Ip Llc | Dynamic brownout adjustment in a storage device |
US9549457B2 (en) | 2014-02-12 | 2017-01-17 | Sandisk Technologies Llc | System and method for redirecting airflow across an electronic assembly |
US9497889B2 (en) | 2014-02-27 | 2016-11-15 | Sandisk Technologies Llc | Heat dissipation for substrate assemblies |
US9703636B2 (en) | 2014-03-01 | 2017-07-11 | Sandisk Technologies Llc | Firmware reversion trigger and control |
US9485851B2 (en) | 2014-03-14 | 2016-11-01 | Sandisk Technologies Llc | Thermal tube assembly structures |
US9519319B2 (en) | 2014-03-14 | 2016-12-13 | Sandisk Technologies Llc | Self-supporting thermal tube structure for electronic assemblies |
US9348377B2 (en) | 2014-03-14 | 2016-05-24 | Sandisk Enterprise Ip Llc | Thermal isolation techniques |
US9454448B2 (en) | 2014-03-19 | 2016-09-27 | Sandisk Technologies Llc | Fault testing in storage devices |
US9390814B2 (en) | 2014-03-19 | 2016-07-12 | Sandisk Technologies Llc | Fault detection and prediction for data storage elements |
US9448876B2 (en) | 2014-03-19 | 2016-09-20 | Sandisk Technologies Llc | Fault detection and prediction in storage devices |
US9390021B2 (en) | 2014-03-31 | 2016-07-12 | Sandisk Technologies Llc | Efficient cache utilization in a tiered data structure |
US9626400B2 (en) | 2014-03-31 | 2017-04-18 | Sandisk Technologies Llc | Compaction of information in tiered data structure |
US9626399B2 (en) | 2014-03-31 | 2017-04-18 | Sandisk Technologies Llc | Conditional updates for reducing frequency of data modification operations |
US9697267B2 (en) | 2014-04-03 | 2017-07-04 | Sandisk Technologies Llc | Methods and systems for performing efficient snapshots in tiered data structures |
US10656842B2 (en) | 2014-05-30 | 2020-05-19 | Sandisk Technologies Llc | Using history of I/O sizes and I/O sequences to trigger coalesced writes in a non-volatile storage device |
US9703491B2 (en) | 2014-05-30 | 2017-07-11 | Sandisk Technologies Llc | Using history of unaligned writes to cache data and avoid read-modify-writes in a non-volatile storage device |
US8891303B1 (en) | 2014-05-30 | 2014-11-18 | Sandisk Technologies Inc. | Method and system for dynamic word line based configuration of a three-dimensional memory device |
US10146448B2 (en) | 2014-05-30 | 2018-12-04 | Sandisk Technologies Llc | Using history of I/O sequences to trigger cached read ahead in a non-volatile storage device |
US9645749B2 (en) | 2014-05-30 | 2017-05-09 | Sandisk Technologies Llc | Method and system for recharacterizing the storage density of a memory device or a portion thereof |
US10162748B2 (en) | 2014-05-30 | 2018-12-25 | Sandisk Technologies Llc | Prioritizing garbage collection and block allocation based on I/O history for logical address regions |
US10372613B2 (en) | 2014-05-30 | 2019-08-06 | Sandisk Technologies Llc | Using sub-region I/O history to cache repeatedly accessed sub-regions in a non-volatile storage device |
US10656840B2 (en) | 2014-05-30 | 2020-05-19 | Sandisk Technologies Llc | Real-time I/O pattern recognition to enhance performance and endurance of a storage device |
US9070481B1 (en) | 2014-05-30 | 2015-06-30 | Sandisk Technologies Inc. | Internal current measurement for age measurements |
US9093160B1 (en) | 2014-05-30 | 2015-07-28 | Sandisk Technologies Inc. | Methods and systems for staggered memory operations |
US10114557B2 (en) | 2014-05-30 | 2018-10-30 | Sandisk Technologies Llc | Identification of hot regions to enhance performance and endurance of a non-volatile storage device |
US9652381B2 (en) | 2014-06-19 | 2017-05-16 | Sandisk Technologies Llc | Sub-block garbage collection |
US9443601B2 (en) | 2014-09-08 | 2016-09-13 | Sandisk Technologies Llc | Holdup capacitor energy harvesting |
US9478314B2 (en) * | 2014-09-15 | 2016-10-25 | Macronix International Co., Ltd. | Memory utilizing bundle-level status values and bundle status circuits |
KR102248207B1 (ko) | 2014-10-30 | 2021-05-06 | 삼성전자주식회사 | 저장 장치 및 그것의 동작 방법 |
KR102023121B1 (ko) * | 2014-10-31 | 2019-11-04 | 에스케이하이닉스 주식회사 | 에러를 보정하는 메모리 장치 및 그의 에러 보정 방법 |
KR102336458B1 (ko) * | 2015-07-30 | 2021-12-08 | 삼성전자주식회사 | 고속으로 결함 비트 라인을 검출하는 불휘발성 메모리 장치 및 그것의 테스트 시스템 |
US9619321B1 (en) * | 2015-10-08 | 2017-04-11 | Seagate Technology Llc | Internal copy-back with read-verify |
KR102511459B1 (ko) * | 2016-03-17 | 2023-03-17 | 삼성전자주식회사 | 비휘발성 메모리 장치 및 그 동작 방법 |
CN106775454B (zh) * | 2016-11-21 | 2019-07-19 | 建荣半导体(深圳)有限公司 | 一种管理坏列地址的方法及其装置 |
US10853170B2 (en) * | 2018-09-06 | 2020-12-01 | Texas Instruments Incorporated | ECC protected storage |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6266273B1 (en) * | 2000-08-21 | 2001-07-24 | Sandisk Corporation | Method and structure for reliable data copy operation for non-volatile memories |
US6339546B1 (en) * | 1999-09-17 | 2002-01-15 | Hitachi, Ltd. | Storage device counting error correction |
Family Cites Families (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS52129334A (en) * | 1976-04-23 | 1977-10-29 | Nec Corp | Memor |
US4358848A (en) * | 1980-11-14 | 1982-11-09 | International Business Machines Corporation | Dual function ECC system with block check byte |
US4453251A (en) * | 1981-10-13 | 1984-06-05 | Burroughs Corporation | Error-correcting memory with low storage overhead and fast correction mechanism |
JPH05128882A (ja) * | 1991-11-06 | 1993-05-25 | Mitsubishi Electric Corp | データ処理装置 |
JPH05174496A (ja) * | 1991-12-25 | 1993-07-13 | Sony Corp | ディジタル記録装置のid信号処理装置 |
KR950003013B1 (ko) * | 1992-03-30 | 1995-03-29 | 삼성전자 주식회사 | 틀림정정회로를 가지는 이이피롬 |
US5657332A (en) * | 1992-05-20 | 1997-08-12 | Sandisk Corporation | Soft errors handling in EEPROM devices |
US5532962A (en) * | 1992-05-20 | 1996-07-02 | Sandisk Corporation | Soft errors handling in EEPROM devices |
US5343426A (en) * | 1992-06-11 | 1994-08-30 | Digital Equipment Corporation | Data formater/converter for use with solid-state disk memory using storage devices with defects |
US5754753A (en) * | 1992-06-11 | 1998-05-19 | Digital Equipment Corporation | Multiple-bit error correction in computer main memory |
US5459742A (en) * | 1992-06-11 | 1995-10-17 | Quantum Corporation | Solid state disk memory using storage devices with defects |
JPH08153045A (ja) * | 1994-11-30 | 1996-06-11 | Nec Corp | メモリ制御回路 |
US5838614A (en) * | 1995-07-31 | 1998-11-17 | Lexar Microsystems, Inc. | Identification and verification of a sector within a block of mass storage flash memory |
KR0172366B1 (ko) * | 1995-11-10 | 1999-03-30 | 김광호 | 불휘발성 반도체 메모리 장치의 독출 및 프로그램 방법과 그 회로 |
ATE225961T1 (de) * | 1996-08-16 | 2002-10-15 | Tokyo Electron Device Ltd | Halbleiterspeicheranordnung mit fehlerdetektion und -korrektur |
US5978952A (en) * | 1996-12-31 | 1999-11-02 | Intel Corporation | Time-distributed ECC scrubbing to correct memory errors |
JPH10302485A (ja) * | 1997-04-28 | 1998-11-13 | Hitachi Inf Technol:Kk | フラッシュ・メモリを有する情報処理装置 |
JPH10340575A (ja) * | 1997-06-04 | 1998-12-22 | Sony Corp | 外部記憶装置及びその制御装置、データ送受信装置 |
JP3173438B2 (ja) * | 1997-06-04 | 2001-06-04 | ソニー株式会社 | メモリカード及び装着装置 |
US6040997A (en) * | 1998-03-25 | 2000-03-21 | Lexar Media, Inc. | Flash memory leveling architecture having no external latch |
JP2001006379A (ja) * | 1999-06-16 | 2001-01-12 | Fujitsu Ltd | 複写、移動機能を有するフラッシュメモリ |
JP4165990B2 (ja) * | 1999-12-20 | 2008-10-15 | Tdk株式会社 | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリへのデータの書き込み方法 |
US6728913B1 (en) * | 2000-02-25 | 2004-04-27 | Advanced Micro Devices, Inc. | Data recycling in memory |
US7356752B2 (en) * | 2000-03-14 | 2008-04-08 | Comtech Telecommunications Corp. | Enhanced turbo product codes |
US6941505B2 (en) * | 2000-09-12 | 2005-09-06 | Hitachi, Ltd. | Data processing system and data processing method |
JP2002351685A (ja) * | 2001-05-22 | 2002-12-06 | Sankyo Seiki Mfg Co Ltd | 不揮発性メモリのデータ更新方法及び制御装置 |
JP2003030993A (ja) * | 2001-07-17 | 2003-01-31 | Toshiba Corp | 半導体記憶装置 |
US6775728B2 (en) * | 2001-11-15 | 2004-08-10 | Intel Corporation | Method and system for concurrent handler execution in an SMI and PMI-based dispatch-execution framework |
JP3802411B2 (ja) * | 2001-12-20 | 2006-07-26 | 株式会社東芝 | 不揮発性半導体記憶装置のデータコピー方法 |
JP4236485B2 (ja) * | 2003-03-06 | 2009-03-11 | Tdk株式会社 | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びに、フラッシュメモリの制御方法 |
-
2003
- 2003-04-03 KR KR1020030021114A patent/KR100543447B1/ko active IP Right Grant
-
2004
- 2004-03-29 JP JP2004095529A patent/JP2004311010A/ja active Pending
- 2004-03-30 EP EP04007598A patent/EP1465203B1/en not_active Expired - Lifetime
- 2004-03-30 DE DE602004003275T patent/DE602004003275T2/de not_active Expired - Lifetime
- 2004-04-02 US US10/817,061 patent/US7296128B2/en active Active
- 2004-04-05 CN CN2011100089100A patent/CN102034545A/zh active Pending
- 2004-04-05 CN CN201310047282.6A patent/CN103136068B/zh not_active Expired - Lifetime
- 2004-04-05 CN CN2004100477591A patent/CN1551244B/zh not_active Expired - Lifetime
-
2007
- 2007-10-18 US US11/874,821 patent/US20080163030A1/en not_active Abandoned
-
2012
- 2012-06-01 US US13/486,387 patent/US20120239866A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6339546B1 (en) * | 1999-09-17 | 2002-01-15 | Hitachi, Ltd. | Storage device counting error correction |
US6266273B1 (en) * | 2000-08-21 | 2001-07-24 | Sandisk Corporation | Method and structure for reliable data copy operation for non-volatile memories |
Also Published As
Publication number | Publication date |
---|---|
CN102034545A (zh) | 2011-04-27 |
KR100543447B1 (ko) | 2006-01-23 |
US20080163030A1 (en) | 2008-07-03 |
KR20040086923A (ko) | 2004-10-13 |
US20040202034A1 (en) | 2004-10-14 |
EP1465203B1 (en) | 2006-11-22 |
EP1465203A1 (en) | 2004-10-06 |
JP2004311010A (ja) | 2004-11-04 |
DE602004003275D1 (de) | 2007-01-04 |
US20120239866A1 (en) | 2012-09-20 |
CN1551244B (zh) | 2013-05-01 |
US7296128B2 (en) | 2007-11-13 |
DE602004003275T2 (de) | 2007-05-31 |
CN103136068A (zh) | 2013-06-05 |
CN1551244A (zh) | 2004-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103136068B (zh) | 用于页复制操作的可纠错的非易失性存储器及其方法 | |
CN102318007B (zh) | 用于对一页内和多页间的数据进行芯片上伪随机化的非易失性存储器和方法 | |
CN105144302B (zh) | 存储器装置中的错误校正操作 | |
US7254049B2 (en) | Method of comparison between cache and data register for non-volatile memory | |
US9117530B2 (en) | Preserving data from adjacent word lines while programming binary non-volatile storage elements | |
JP3730423B2 (ja) | 半導体記憶装置 | |
KR101807346B1 (ko) | 비휘발성 메모리에 비트 스캔 회로 및 방법 | |
US20070035998A1 (en) | Nonvolatile memory apparatus | |
JP2008504637A (ja) | フラッシュメモリ装置における内部プログラミング中の同時の外部読出動作 | |
KR20040101222A (ko) | 섹터 포인터들을 활용하는 메모리 맵핑 장치 | |
CN102171767A (zh) | 用于存储装置的基于性能因素调节的软数据生成方法装置 | |
KR100291807B1 (ko) | 비휘발성 기억소자 및 그 제어방법 | |
US7471562B2 (en) | Method and apparatus for accessing nonvolatile memory with read error by changing read reference | |
JP3755346B2 (ja) | 不揮発性半導体記憶装置 | |
CN105988880B (zh) | 存储器管理方法、存储器控制电路单元及存储器储存装置 | |
JP4256307B2 (ja) | メモリカード | |
KR100634432B1 (ko) | 카피백 프로그램 동작 중에 에러를 검출하는 낸드 플래시메모리 장치 및 에러 검출 방법 | |
US7773421B2 (en) | Method and apparatus for accessing memory with read error by changing comparison | |
CN1252604A (zh) | 存储器元件的测试电路 | |
US8077516B2 (en) | Method and apparatus for accessing memory with read error by changing comparison | |
KR100632949B1 (ko) | 낸드 플래시 메모리 장치 및 그것의 카피백 프로그램 방법 | |
CN106297879A (zh) | 存储器装置与其操作方法 | |
CN115878048A (zh) | 一种用于NAND Flash随机化的随机序列种子生成方法及其系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CX01 | Expiry of patent term | ||
CX01 | Expiry of patent term |
Granted publication date: 20170531 |