US7392436B2 - Program failure recovery - Google Patents
Program failure recovery Download PDFInfo
- Publication number
- US7392436B2 US7392436B2 US10/431,767 US43176703A US7392436B2 US 7392436 B2 US7392436 B2 US 7392436B2 US 43176703 A US43176703 A US 43176703A US 7392436 B2 US7392436 B2 US 7392436B2
- Authority
- US
- United States
- Prior art keywords
- data
- latch
- array
- programming
- memory cells
- 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.)
- Active, expires
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/06—Address interface arrangements, e.g. address buffers
-
- 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/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3436—Arrangements for verifying correct programming or erasure
- G11C16/3454—Arrangements for verifying correct programming or for detecting overprogrammed cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/10—Decoders
-
- 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/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1415—Saving, restoring, recovering or retrying at system level
- G06F11/1433—Saving, restoring, recovering or retrying at system level during software upgrading
Definitions
- the present invention relates generally to memory devices and in particular the present invention relates to the operation of memory devices when a program failure occurs.
- a flash memory device is a type of electrically erasable programmable read-only memory (EEPROM) and is used for non-volatile storage of data. Flash memory is being increasingly used to store execution codes and data in portable electronic products, such as computer systems.
- EEPROM electrically erasable programmable read-only memory
- a typical flash memory comprises a memory array having rows and columns of memory cells.
- Each of the memory cells is fabricated as a field-effect transistor having a control gate and a floating gate.
- the floating gate is capable of holding a charge and is separated by a thin oxide layer from source and drain regions contained in a substrate.
- Each of the memory cells can be electrically programmed (charged) by injecting electrons from the drain region through the oxide layer onto the floating gate. The charge can be removed from the floating gate by tunneling the electrons to the source through the oxide layer during an erase operation.
- the data in a memory cell is determined by the presence or absence of a charge on the floating gate.
- NOR and NAND flash memory devices are two common types of flash memory devices, so called for the logical form the basic memory cell configuration in which each is arranged.
- the control gate of each memory cell of a row of the array is connected to a word-select line
- the drain region of each memory cell of a column of the array is connected to a bit line.
- the memory array for NOR flash memory devices is accessed by a row decoder activating a row of floating gate memory cells by selecting the word-select line coupled to their gates.
- the row of selected memory cells then place their data values on the column bit lines by flowing a differing current if in a programmed state or not programmed state from a coupled source line to the coupled column bit lines.
- the array of memory cells for NAND flash memory devices is also arranged such that the control gate of each memory cell of a row of the array is connected to a word-select line.
- each memory cell is not directly coupled to a column bit line by its drain region. Instead, the memory cells of the array are arranged together in strings, typically of 16 each, with the memory cells coupled together in series, source to drain, between a source line and a column bit line.
- the memory array for NAND flash memory devices is then accessed by a row decoder activating a row of memory cells by selecting the word-select line coupled to a control gate of a memory cell.
- the word-select lines coupled to the control gates of unselected memory cells of each string are driven to operate the unselected memory cells of each string as pass transistors, so that they pass current in a manner that is unrestricted by their stored data values.
- Current then flows from the source line to the column bit line through each series coupled string, restricted only by the selected memory cells of each string. This places the current-encoded data values of the row of selected memory cells on the column bit lines.
- the various embodiments relate to data recovery when a program failure occurs during programming of a memory device.
- the data recovery involves reconstructing the data from data contained on the memory device when the program failure occurs. This avoids storing data on a buffer located externally to the memory device for programming the memory device in the event of a program failure.
- the invention provides a flash memory device having an array of flash memory cells and a command control circuit for controlling access to the array of flash memory cells.
- the command control circuit is adapted to perform a method when a program failure occurs.
- the method includes preserving first data within the memory device and reconstructing second data originally intended for programming the memory device before the program failure from the first data.
- the invention provides a memory system having a controller, a command link connected to the controller, a data link connected to the controller, and a flash memory device.
- the flash memory device has an array of flash memory cells, a first data register connected to the array of flash memory cells, a second data register connected to the first data register, to the array of flash memory cells, and to the data link, and a command control circuit for controlling access to the array of flash memory cells.
- the command control circuit connected to the command link and is adapted to perform a method when a program failure occurs.
- FIG. 1 is a block diagram of a flash memory system according to an embodiment of the present invention.
- FIGS. 2A-2D illustrate data transfer during conventional programming of a memory array of the flash memory of FIG. 1 .
- FIGS. 3A-3D illustrate data transfer during a method of operating a memory device when a program failure occurs according to an embodiment of the present invention.
- FIG. 1 is a block diagram of a flash memory system 100 according to an embodiment of the present invention.
- Flash memory system 100 includes a memory (or mass storage) device 102 , such as a NAND flash memory device, coupled to a processor or data controller 104 .
- memory device 102 includes an array 106 of individual storage locations (or memory cells) 105 , e.g., flash memory cells, each cell having a distinct memory address.
- Array 106 is arranged in rows and columns, with the rows arranged in addressable blocks.
- array 106 has rows (or pages) 107 1 to 107 N , as shown, where each of rows (or pages) 107 1 to 107 N includes a plurality of memory cells 105 .
- a plurality of memory cells 105 comprises one of rows (or pages) 107 1 to 107 N .
- Memory system 100 has been simplified to focus on features of the memory that are helpful in understanding the invention.
- Data stored in the memory array 106 can be accessed using externally provided location addresses received by address latches 108 via a plurality of data (DQ) lines 124 . Address signals are received and decoded to access the memory array 106 . Sense amplifier and compare circuitry 112 is used to sense data stored in the memory cells and verify the accuracy of stored data. Command control circuit 114 decodes signals provided on control link 116 from the controller 104 and controls access to the memory cells of array 106 . These signals are used to control the operations of the memory, including data read, data write, and erase operations.
- a data input buffer circuit 120 and a data output buffer circuit 122 are included for bi-directional data communication over the plurality of data (DQ) lines 124 with the controller 102 .
- data input buffer circuit 120 includes cache latches (or data registers) 130 .
- cache latches 130 include cache-latch cells 132 respectively corresponding to memory cells 105 of each of rows 107 1 to 107 N .
- Memory device 102 also includes program latches (or data registers) 140 .
- program latches 140 include program-latch cells 142 respectively corresponding to cache-latch cells 132 and of memory cells 105 of each of rows 107 1 , to 107 N .
- cache latches 130 are serially connected to program latches 140 .
- command control circuit 114 decodes program commands received from data controller 104 .
- Programming of array 106 includes selecting a location within array 106 to program, e.g., row (or page) 107 2 of array 106 , as shown in FIG. 1 .
- FIGS. 2A-2D illustrate data transfer during conventional programming of array 106 .
- Data for row 107 2 are transferred from controller 104 to cache latches 130 , as shown in FIG. 2A . After the data for row 107 2 are transferred to cache latches 130 , these data are transferred from cache latches 130 to program latches 140 , as shown in FIG. 2B , and programming of row 107 2 commences.
- Programming of row 107 2 with the data of program latches 140 is accomplished by combining the data of row 107 2 with the data of program latches 140 using a logical AND operation. For example, a zero (0) of the data of program latches 140 combined with a corresponding one (1) of the data of row 107 2 using a logical AND causes a zero (0) to replace the one (1) in row 107 2 . A one (1) of the data of program latches 140 combined with a corresponding one (1) of the data of row 107 2 using a logical AND produces a one (1) in row 107 2 .
- programming row 107 2 involves replacing the ones (1s) of row 107 2 with the corresponding zeros (0s) of program latches 140 .
- the data are typically verified as they are transferred to row 107 2 , e.g., to determine if the data transferred to row 107 2 matches the data previously in program latches 140 .
- the data in program latches 140 of FIG. 2C matches the data in row 107 2 of FIG. 2D , indicating successful programming of row 107 2 .
- a one (1) is placed in a corresponding program-latch cell 142 of program latches 140 .
- each of the program-latch cells 142 of program latches 140 has one (1) in FIG. 2D , indicating that each of the corresponding memory cells 105 of row 107 2 is verified and thus indicating successful programming of row 107 2 .
- FIGS. 3A-3D illustrate data transfer within memory device 102 during a method 400 , according to an embodiment of the present invention, of operating memory device 102 when a program failure is detected.
- detecting a program failure involves command control circuit 114 detecting a zero (0) in program latches 140 .
- a flowchart of method 400 is presented in FIG. 4 .
- Command control circuit 114 is adapted to perform method 400 when a program failure is detected.
- Method 400 preserves the data within memory device 102 at block 410 when a program failure is detected. This is accomplished by stopping programming operations in progress before the program failure occurs when the program failure is detected.
- Stopping programming operations includes stopping the transfer of data to row 107 2 from program latches 140 as indicated by a slash 300 passing through arrow 302 of FIG. 3A , and stopping altering the data within program latches 140 . This preserves the data contained within row 107 2 and program latches 140 at the time of the program failure. Stopping programming operations can also include stopping data transfer from controller 104 to cache latches 130 if data are being transferred from controller 104 to cache latches 130 when the program failure is detected and in another embodiment, stopping data transfer from cache latches 130 to program latches 140 if data are being transferred from cache latches 130 to program latches 140 when the program failure is detected. This preserves the data contained within cache latches 130 at the time of the program failure.
- row (or page) 107 i is programmed using the data contained in program latches 140 at the time of the program failure. This includes selecting row 107 i and transferring the data from program latches 140 to row 107 i , as shown in FIG. 3B .
- row (or page) 107 i+1 is programmed using the data contained in cache latches 130 at the time of the program failure. This includes selecting row 107 i+1 , transferring the data from cache latches 130 to program latches 140 , and transferring the data from program latches 140 to row 107 i+1 , as shown in FIG. 3C .
- failed data from row 107 2 is combined with the data stored in row 107 i , e.g., by programming or copying the failed data from row 107 2 on top of the data stored in row 107 i .
- the data in row 107 i of FIG. 3D match those in program latches 140 (the data originally intended for row 107 2 before the program failure depicted in FIG. 3A ) in FIG. 2C .
- row 107 2 is assigned a defective status and is treated as a defect to avoid accessing the failed data therein during operation of memory device 102 .
Landscapes
- Engineering & Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
Description
Claims (43)
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/431,767 US7392436B2 (en) | 2003-05-08 | 2003-05-08 | Program failure recovery |
US11/491,331 US7401267B2 (en) | 2003-05-08 | 2006-07-21 | Program failure recovery |
US12/144,778 US7783934B2 (en) | 2003-05-08 | 2008-06-24 | Program failure recovery |
US12/861,262 US8074122B2 (en) | 2003-05-08 | 2010-08-23 | Program failure recovery |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/431,767 US7392436B2 (en) | 2003-05-08 | 2003-05-08 | Program failure recovery |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/491,331 Continuation US7401267B2 (en) | 2003-05-08 | 2006-07-21 | Program failure recovery |
Publications (2)
Publication Number | Publication Date |
---|---|
US20040237000A1 US20040237000A1 (en) | 2004-11-25 |
US7392436B2 true US7392436B2 (en) | 2008-06-24 |
Family
ID=33449658
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/431,767 Active 2025-05-02 US7392436B2 (en) | 2003-05-08 | 2003-05-08 | Program failure recovery |
US11/491,331 Expired - Lifetime US7401267B2 (en) | 2003-05-08 | 2006-07-21 | Program failure recovery |
US12/144,778 Expired - Lifetime US7783934B2 (en) | 2003-05-08 | 2008-06-24 | Program failure recovery |
US12/861,262 Expired - Lifetime US8074122B2 (en) | 2003-05-08 | 2010-08-23 | Program failure recovery |
Family Applications After (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/491,331 Expired - Lifetime US7401267B2 (en) | 2003-05-08 | 2006-07-21 | Program failure recovery |
US12/144,778 Expired - Lifetime US7783934B2 (en) | 2003-05-08 | 2008-06-24 | Program failure recovery |
US12/861,262 Expired - Lifetime US8074122B2 (en) | 2003-05-08 | 2010-08-23 | Program failure recovery |
Country Status (1)
Country | Link |
---|---|
US (4) | US7392436B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080263412A1 (en) * | 2003-05-08 | 2008-10-23 | Micron Technology, Inc. | Program failure recovery |
US20110182121A1 (en) * | 2010-01-28 | 2011-07-28 | Deepanshu Dutta | Data recovery for non-volatile memory based on count of data state-specific fails |
US8630118B2 (en) | 2011-11-09 | 2014-01-14 | Sandisk Technologies Inc. | Defective word line detection |
US8842476B2 (en) | 2011-11-09 | 2014-09-23 | Sandisk Technologies Inc. | Erratic program detection for non-volatile storage |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7490283B2 (en) | 2004-05-13 | 2009-02-10 | Sandisk Corporation | Pipelined data relocation and improved chip architectures |
US7120051B2 (en) | 2004-12-14 | 2006-10-10 | Sandisk Corporation | Pipelined programming of non-volatile memories using early data |
US7420847B2 (en) * | 2004-12-14 | 2008-09-02 | Sandisk Corporation | Multi-state memory having data recovery after program fail |
US7849381B2 (en) | 2004-12-21 | 2010-12-07 | Sandisk Corporation | Method for copying data in reprogrammable non-volatile memory |
US7206230B2 (en) | 2005-04-01 | 2007-04-17 | Sandisk Corporation | Use of data latches in cache operations of non-volatile memories |
US7463521B2 (en) * | 2005-04-01 | 2008-12-09 | Sandisk Corporation | Method for non-volatile memory with managed execution of cached data |
TWI410974B (en) * | 2005-04-01 | 2013-10-01 | Sandisk Technologies Inc | Multi-state memory having data recovery after program fail |
US7239557B2 (en) * | 2005-06-17 | 2007-07-03 | Micron Technology, Inc. | Program method with optimized voltage level for flash memory |
US7292476B2 (en) * | 2005-08-31 | 2007-11-06 | Micron Technology, Inc. | Programming method for NAND EEPROM |
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 |
US7408810B2 (en) * | 2006-02-22 | 2008-08-05 | Micron Technology, Inc. | Minimizing effects of program disturb in a memory device |
US7561469B2 (en) * | 2006-03-28 | 2009-07-14 | Micron Technology, Inc. | Programming method to reduce word line to word line breakdown for NAND flash |
US7440321B2 (en) * | 2006-04-12 | 2008-10-21 | Micron Technology, Inc. | Multiple select gate architecture with select gates of different lengths |
US7471565B2 (en) * | 2006-08-22 | 2008-12-30 | Micron Technology, Inc. | Reducing effects of program disturb in a memory device |
US7733705B2 (en) * | 2008-03-13 | 2010-06-08 | Micron Technology, Inc. | Reduction of punch-through disturb during programming of a memory device |
US8880778B2 (en) | 2010-05-13 | 2014-11-04 | Micron Technology, Inc. | Memory buffer having accessible information after a program-fail |
US8472280B2 (en) | 2010-12-21 | 2013-06-25 | Sandisk Technologies Inc. | Alternate page by page programming scheme |
JP2013030712A (en) * | 2011-07-29 | 2013-02-07 | Toshiba Corp | Semiconductor module and method of manufacturing semiconductor module |
JP2015049633A (en) * | 2013-08-30 | 2015-03-16 | 富士通株式会社 | Information processing apparatus, data repair program, and data repair method |
CN108924251A (en) * | 2018-07-31 | 2018-11-30 | 长沙龙生光启新材料科技有限公司 | A kind of data transmission method and system of auxiliary detection |
US11243831B2 (en) * | 2019-07-15 | 2022-02-08 | Micron Technology, Inc. | Reset and replay of memory sub-system controller in a memory sub-system |
Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4578751A (en) * | 1982-06-25 | 1986-03-25 | At&T Technologies, Inc. | System for simultaneously programming a number of EPROMs |
US4617664A (en) * | 1984-06-29 | 1986-10-14 | International Business Machines Corporation | Error correction for multiple bit output chips |
US5502728A (en) * | 1992-02-14 | 1996-03-26 | International Business Machines Corporation | Large, fault-tolerant, non-volatile, multiported memory |
US5784317A (en) * | 1995-12-27 | 1998-07-21 | Hyundai Electronics Industries Co., Ltd. | Flash memory device using an operational circuit for bit-by-bit verifying of programmed data in memory cells and method of programming the same |
US5832204A (en) * | 1996-03-12 | 1998-11-03 | International Business Machines Corporation | Efficient system for predicting and processing storage subsystem failure |
US5870520A (en) * | 1992-12-23 | 1999-02-09 | Packard Bell Nec | Flash disaster recovery ROM and utility to reprogram multiple ROMS |
US5870218A (en) * | 1996-05-01 | 1999-02-09 | Hitaachi, Ltd. | Nonvolatile semiconductor memory device which stores multi-value information |
US5881295A (en) * | 1995-02-07 | 1999-03-09 | Hitachi, Ltd. | Data processor which controls interrupts during programming and erasing of on-chip erasable and programmable non-volatile program memory |
US6041423A (en) * | 1996-11-08 | 2000-03-21 | Oracle Corporation | Method and apparatus for using undo/redo logging to perform asynchronous updates of parity and data pages in a redundant array data storage environment |
US6289484B1 (en) * | 1999-05-19 | 2001-09-11 | Western Digital Technologies, Inc. | Disk drive employing off-line scan to collect selection-control data for subsequently deciding whether to verify after write |
US20030033572A1 (en) * | 2001-08-09 | 2003-02-13 | Walton John K. | Memory system and method of using same |
US20030117856A1 (en) * | 2001-07-23 | 2003-06-26 | Samsung Electronics Co., Ltd. | Memory devices with page buffer having dual registers and method of using the same |
US20030217322A1 (en) * | 2002-05-16 | 2003-11-20 | Steve Rodgers | Variable hamming error correction for a one-time-programmable-ROM |
US20040160829A1 (en) * | 1998-02-16 | 2004-08-19 | Tetsuya Tsujikawa | Semiconductor, memory card, and data processing system |
US6782446B2 (en) * | 2001-08-22 | 2004-08-24 | Intel Corporation | Method to prevent corruption of page tables during flash EEPROM programming |
US20040174741A1 (en) * | 2002-09-26 | 2004-09-09 | Tomoharu Tanaka | Nonvolatile semiconductor memory |
US20040237000A1 (en) * | 2003-05-08 | 2004-11-25 | Micron Technology, Inc. | Program failure recovery |
US6972993B2 (en) * | 2000-12-28 | 2005-12-06 | Sandisk Corporation | Method and structure for efficient data verification operation for non-volatile memories |
US20060126394A1 (en) * | 2004-12-14 | 2006-06-15 | Yan Li | Multi-state memory having data recovery after program fail |
US20060156192A1 (en) * | 2004-12-22 | 2006-07-13 | Fujitsu Limited | Semiconductor memory device |
US7111224B1 (en) * | 2001-02-28 | 2006-09-19 | Xilinx, Inc. | FPGA configuration memory with built-in error correction mechanism |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
SU964736A1 (en) * | 1981-03-06 | 1982-10-07 | Минский радиотехнический институт | Error-correcting storage |
FR2543767B1 (en) * | 1983-03-29 | 1985-06-14 | Cit Alcatel | DEVICE FOR EXCHANGING CODED MESSAGES BETWEEN STATIONS |
US6148417A (en) * | 1998-01-14 | 2000-11-14 | Micron Electronics, Inc. | Method for determining a source of failure during a file system access |
JP3883687B2 (en) * | 1998-02-16 | 2007-02-21 | 株式会社ルネサステクノロジ | Semiconductor device, memory card and data processing system |
DE59906038D1 (en) * | 1998-10-30 | 2003-07-24 | Infineon Technologies Ag | STORAGE DEVICE FOR STORING DATA AND METHOD FOR OPERATING STORAGE DEVICE FOR STORING DATA |
US6651183B1 (en) * | 1999-10-28 | 2003-11-18 | International Business Machines Corporation | Technique for referencing failure information representative of multiple related failures in a distributed computing environment |
US7348607B2 (en) * | 2002-02-01 | 2008-03-25 | Picometrix, Llc | Planar avalanche photodiode |
-
2003
- 2003-05-08 US US10/431,767 patent/US7392436B2/en active Active
-
2006
- 2006-07-21 US US11/491,331 patent/US7401267B2/en not_active Expired - Lifetime
-
2008
- 2008-06-24 US US12/144,778 patent/US7783934B2/en not_active Expired - Lifetime
-
2010
- 2010-08-23 US US12/861,262 patent/US8074122B2/en not_active Expired - Lifetime
Patent Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4578751A (en) * | 1982-06-25 | 1986-03-25 | At&T Technologies, Inc. | System for simultaneously programming a number of EPROMs |
US4617664A (en) * | 1984-06-29 | 1986-10-14 | International Business Machines Corporation | Error correction for multiple bit output chips |
US5502728A (en) * | 1992-02-14 | 1996-03-26 | International Business Machines Corporation | Large, fault-tolerant, non-volatile, multiported memory |
US5870520A (en) * | 1992-12-23 | 1999-02-09 | Packard Bell Nec | Flash disaster recovery ROM and utility to reprogram multiple ROMS |
US5881295A (en) * | 1995-02-07 | 1999-03-09 | Hitachi, Ltd. | Data processor which controls interrupts during programming and erasing of on-chip erasable and programmable non-volatile program memory |
US5784317A (en) * | 1995-12-27 | 1998-07-21 | Hyundai Electronics Industries Co., Ltd. | Flash memory device using an operational circuit for bit-by-bit verifying of programmed data in memory cells and method of programming the same |
US5832204A (en) * | 1996-03-12 | 1998-11-03 | International Business Machines Corporation | Efficient system for predicting and processing storage subsystem failure |
US5870218A (en) * | 1996-05-01 | 1999-02-09 | Hitaachi, Ltd. | Nonvolatile semiconductor memory device which stores multi-value information |
US6041423A (en) * | 1996-11-08 | 2000-03-21 | Oracle Corporation | Method and apparatus for using undo/redo logging to perform asynchronous updates of parity and data pages in a redundant array data storage environment |
US20040160829A1 (en) * | 1998-02-16 | 2004-08-19 | Tetsuya Tsujikawa | Semiconductor, memory card, and data processing system |
US6289484B1 (en) * | 1999-05-19 | 2001-09-11 | Western Digital Technologies, Inc. | Disk drive employing off-line scan to collect selection-control data for subsequently deciding whether to verify after write |
US6972993B2 (en) * | 2000-12-28 | 2005-12-06 | Sandisk Corporation | Method and structure for efficient data verification operation for non-volatile memories |
US7111224B1 (en) * | 2001-02-28 | 2006-09-19 | Xilinx, Inc. | FPGA configuration memory with built-in error correction mechanism |
US20030117856A1 (en) * | 2001-07-23 | 2003-06-26 | Samsung Electronics Co., Ltd. | Memory devices with page buffer having dual registers and method of using the same |
US20030033572A1 (en) * | 2001-08-09 | 2003-02-13 | Walton John K. | Memory system and method of using same |
US6782446B2 (en) * | 2001-08-22 | 2004-08-24 | Intel Corporation | Method to prevent corruption of page tables during flash EEPROM programming |
US20030217322A1 (en) * | 2002-05-16 | 2003-11-20 | Steve Rodgers | Variable hamming error correction for a one-time-programmable-ROM |
US20040174741A1 (en) * | 2002-09-26 | 2004-09-09 | Tomoharu Tanaka | Nonvolatile semiconductor memory |
US20040237000A1 (en) * | 2003-05-08 | 2004-11-25 | Micron Technology, Inc. | Program failure recovery |
US20060126394A1 (en) * | 2004-12-14 | 2006-06-15 | Yan Li | Multi-state memory having data recovery after program fail |
US20060156192A1 (en) * | 2004-12-22 | 2006-07-13 | Fujitsu Limited | Semiconductor memory device |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080263412A1 (en) * | 2003-05-08 | 2008-10-23 | Micron Technology, Inc. | Program failure recovery |
US7783934B2 (en) * | 2003-05-08 | 2010-08-24 | Micron Technology, Inc. | Program failure recovery |
US20100325479A1 (en) * | 2003-05-08 | 2010-12-23 | Micron Technology, Inc. | Program failure recovery |
US8074122B2 (en) | 2003-05-08 | 2011-12-06 | Micron Technology, Inc. | Program failure recovery |
US20110182121A1 (en) * | 2010-01-28 | 2011-07-28 | Deepanshu Dutta | Data recovery for non-volatile memory based on count of data state-specific fails |
US8248850B2 (en) | 2010-01-28 | 2012-08-21 | Sandisk Technologies Inc. | Data recovery for non-volatile memory based on count of data state-specific fails |
US8630118B2 (en) | 2011-11-09 | 2014-01-14 | Sandisk Technologies Inc. | Defective word line detection |
US8842476B2 (en) | 2011-11-09 | 2014-09-23 | Sandisk Technologies Inc. | Erratic program detection for non-volatile storage |
USRE46014E1 (en) | 2011-11-09 | 2016-05-24 | Sandisk Technologies Inc. | Defective word line detection |
Also Published As
Publication number | Publication date |
---|---|
US20100325479A1 (en) | 2010-12-23 |
US8074122B2 (en) | 2011-12-06 |
US20040237000A1 (en) | 2004-11-25 |
US7783934B2 (en) | 2010-08-24 |
US7401267B2 (en) | 2008-07-15 |
US20080263412A1 (en) | 2008-10-23 |
US20060259829A1 (en) | 2006-11-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7401267B2 (en) | Program failure recovery | |
US7463520B2 (en) | Memory device with variable trim settings | |
US7162668B2 (en) | Memory with element redundancy | |
US6381174B1 (en) | Non-volatile memory device with redundant columns | |
US8085592B2 (en) | Charge-trap flash memory device with reduced erasure stress and related programming and erasing methods thereof | |
KR102429452B1 (en) | Semiconductor memory device and operating method thereof | |
US20080049507A1 (en) | Flash memory device employing disturbance monitoring scheme | |
US20060198217A1 (en) | Multiple level cell memory device with single bit per cell, re-mappable memory block | |
US20100046290A1 (en) | Flash memory device and memory system | |
KR102461738B1 (en) | Semiconductor memory device and operating method thereof | |
JP2006048777A (en) | Nand flash memory and data writing method | |
KR100898039B1 (en) | Nonvolatile Semiconductor Memory Device And Its Program Method | |
US10685732B2 (en) | Semiconductor memory device and operating method | |
KR20080079556A (en) | Nonvolatile memory device and driving method thereof | |
KR20170090177A (en) | Memory system, semiconductor memory device and operating method thereof | |
US7640465B2 (en) | Memory with element redundancy | |
US9875798B2 (en) | Method for managing a fail row of the memory plane of a non volatile memory and corresponding memory device | |
US7233530B2 (en) | System and method for over erase reduction of nitride read only memory | |
US10446258B2 (en) | Methods and apparatus for providing redundancy in memory | |
US8923068B2 (en) | Low margin read operation with CRC comparision | |
CN114115701A (en) | Nonvolatile memory and writing method and reading method thereof | |
US20240404574A1 (en) | Fast background array pattern writing | |
KR20100076692A (en) | Nand flash memory device and method of writing data in nand flash memory device | |
JP2006209963A (en) | Semiconductor storage device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MICRON TECHNOLOGY, INC., IDAHO Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:KEAYS, BRADY;REEL/FRAME:014057/0682 Effective date: 20030424 |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
FPAY | Fee payment |
Year of fee payment: 4 |
|
FPAY | Fee payment |
Year of fee payment: 8 |
|
AS | Assignment |
Owner name: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT, CALIFORNIA Free format text: SECURITY INTEREST;ASSIGNOR:MICRON TECHNOLOGY, INC.;REEL/FRAME:038669/0001 Effective date: 20160426 Owner name: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGEN Free format text: SECURITY INTEREST;ASSIGNOR:MICRON TECHNOLOGY, INC.;REEL/FRAME:038669/0001 Effective date: 20160426 |
|
AS | Assignment |
Owner name: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT, MARYLAND Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:MICRON TECHNOLOGY, INC.;REEL/FRAME:038954/0001 Effective date: 20160426 Owner name: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL Free format text: PATENT SECURITY AGREEMENT;ASSIGNOR:MICRON TECHNOLOGY, INC.;REEL/FRAME:038954/0001 Effective date: 20160426 |
|
AS | Assignment |
Owner name: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT, CALIFORNIA Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REPLACE ERRONEOUSLY FILED PATENT #7358718 WITH THE CORRECT PATENT #7358178 PREVIOUSLY RECORDED ON REEL 038669 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST;ASSIGNOR:MICRON TECHNOLOGY, INC.;REEL/FRAME:043079/0001 Effective date: 20160426 Owner name: U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGEN Free format text: CORRECTIVE ASSIGNMENT TO CORRECT THE REPLACE ERRONEOUSLY FILED PATENT #7358718 WITH THE CORRECT PATENT #7358178 PREVIOUSLY RECORDED ON REEL 038669 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST;ASSIGNOR:MICRON TECHNOLOGY, INC.;REEL/FRAME:043079/0001 Effective date: 20160426 |
|
AS | Assignment |
Owner name: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT, ILLINOIS Free format text: SECURITY INTEREST;ASSIGNORS:MICRON TECHNOLOGY, INC.;MICRON SEMICONDUCTOR PRODUCTS, INC.;REEL/FRAME:047540/0001 Effective date: 20180703 Owner name: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT, IL Free format text: SECURITY INTEREST;ASSIGNORS:MICRON TECHNOLOGY, INC.;MICRON SEMICONDUCTOR PRODUCTS, INC.;REEL/FRAME:047540/0001 Effective date: 20180703 |
|
AS | Assignment |
Owner name: MICRON TECHNOLOGY, INC., IDAHO Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:U.S. BANK NATIONAL ASSOCIATION, AS COLLATERAL AGENT;REEL/FRAME:047243/0001 Effective date: 20180629 |
|
AS | Assignment |
Owner name: MICRON TECHNOLOGY, INC., IDAHO Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT;REEL/FRAME:050937/0001 Effective date: 20190731 |
|
AS | Assignment |
Owner name: MICRON SEMICONDUCTOR PRODUCTS, INC., IDAHO Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:051028/0001 Effective date: 20190731 Owner name: MICRON TECHNOLOGY, INC., IDAHO Free format text: RELEASE BY SECURED PARTY;ASSIGNOR:JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT;REEL/FRAME:051028/0001 Effective date: 20190731 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 12 |