US20110026326A1 - Memory system including flash memory and method of operating the same - Google Patents
Memory system including flash memory and method of operating the same Download PDFInfo
- Publication number
- US20110026326A1 US20110026326A1 US12/897,869 US89786910A US2011026326A1 US 20110026326 A1 US20110026326 A1 US 20110026326A1 US 89786910 A US89786910 A US 89786910A US 2011026326 A1 US2011026326 A1 US 2011026326A1
- Authority
- US
- United States
- Prior art keywords
- read
- error
- data
- memory
- flash memory
- 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.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
-
- 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/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/76—Masking faults in memories by using spares or by reconfiguring using address translation or modifications
-
- 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/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0409—Online test
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0411—Online error correction
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2229/00—Indexing scheme relating to checking stores for correct operation, subsequent repair or testing stores during standby or offline operation
- G11C2229/70—Indexing scheme relating to G11C29/70, for implementation aspects of redundancy repair
- G11C2229/72—Location of redundancy information
- G11C2229/723—Redundancy information stored in a part of the memory core to be repaired
Definitions
- the present disclosure generally relates to semiconductor memory devices and, more particularly, to a system which efficiently processes erroneous bits generated in a flash memory device.
- Data may be defective for various reasons. For example, data could be corrupted due to a variety of factors while being stored in a memory, or due to perturbations of data transmission channels between a source and destination.
- ECC data Error correction codes
- FIG. 1 is a block diagram of a general flash memory device
- FIG. 2 is a timing diagram showing a read operation in the flash memory device shown in FIG. 1 .
- a general flash memory device includes a memory cell array that has pluralities of memory blocks.
- FIG. 1 shows a single memory block, e.g., BLK 0 .
- the memory block BLK 0 has strings (or NAND strings) 10 , each being connected to columns or bit lines.
- Each string includes a string selection transistor SST, a ground selection transistor GST, and memory cells (or memory cell transistors).
- each string also includes memory cells MC 0 ⁇ MCn ⁇ 1 serially connected between the selection transistors SST and GST.
- Gates of the selection transistors SST and GST are each coupled to string and ground selection lines SSL and GSL corresponding thereto, while control gates of the memory cell transistors MC 0 ⁇ MCn ⁇ 1 are coupled to word lines WL 0 ⁇ WLn ⁇ 1 corresponding thereto.
- bit lines BL 0 ⁇ BLm ⁇ 1 are connected to page buffers PB corresponding thereto.
- a selected word line (e.g., WL 0 ) is driven with a voltage of 0V, while deselected word lines (e.g., WL 1 ⁇ WLn ⁇ 1) are driven with a read voltage Vread.
- the string and ground selection lines SSL and GSL are driven with the read voltage Vread and the page buffers PB supply sensing currents to their corresponding bit lines BL 0 ⁇ BLm ⁇ 1.
- Voltages of the bit lines BL 0 ⁇ BLm ⁇ 1 may be determined by conditions of the memory cells coupled to the selected word line. For example, if the memory cell coupled to the selected word line is an on-cell, the bit line voltage corresponding thereto falls down to a ground voltage. In contrast, if the memory cell coupled to the selected word line is an off-cell, the bit line voltage corresponding thereto rises up to a power source voltage. Furthermore, the bit line voltages are detected by the page buffers PB as cell data.
- a memory cell coupled to a deselected word line is referred to as a deselected memory cell and a memory cell coupled to a selected word line is referred to as a selected memory cell.
- the word lines of the deselected memory cell are supplied with the read voltage Vread.
- the read voltage Vread is set to a voltage level that is enough to turn on a memory cell transistor being conditioned in an off-state.
- the read voltage Vread is applied to the control gates of the deselected memory cell transistors, while the ground voltage is applied to a substrate (or bulk) of the deselected memory cell transistors.
- a predetermined voltage is applied to drains of the deselected memory cell transistors.
- This bias condition is similar to that for programming a cell. Because of that, as shown in FIG. 3 , electrons may be injected into a floating gate of the deselected memory cell transistor from the substrate during the read operation. That is, the deselected memory cell transistors in on-states (or erased states) are softly programmed under the bias condition of the read operation, which is referred to as ‘read disturbance’ in general. This ‘read disturbance’ may be problematic.
- the read disturbance may gradually increase threshold voltages of memory cells conditioned in on-states (or erased states). As shown by dashed lines of FIG. 4 , threshold voltages of the on-state memory cells may increase with the repetition of the read operation. This phenomenon may make an on-state memory cell be erroneously detected as an off-cell. This erroneous state detection of the cell because of an increase in the threshold voltage due to the read disturbance may cause a read failure.
- bit errors generated from the read operation can be repaired by techniques such as error detection and correction without any other remedial procedure such as a process of block replacement.
- the probability of read failure may gradually increase with a repetition of the read operation. That is, data corrected by an error detection/correction operation is highly probable to have another error during the next read operation.
- a reserved memory block which is additionally provided to a flash memory device, may be substituted for a memory block including defective data by using a remedial process such as block replacement.
- the read data includes error bits under the permitted error bit number
- the error bits are repaired by means of a given process of error detection and correction.
- the read data has been for errors, it is very probable that the error-corrected data may have another error after the read operation. Therefore, there is a need for a technique to improve the reliability of error-corrected data.
- One aspect of the present disclosure includes a method for operating a memory system including a flash memory device having a plurality of memory blocks, the method comprising determining whether a read error generated during a read operation of the flash memory device is caused by read disturbance and replacing a memory block which includes the read error, with a spare memory block if the read error is caused by read disturbance.
- Another aspect of the present disclosure includes a method for operating a memory system including a flash memory device having a plurality of memory blocks, the method comprising copying read error information from the flash memory device into a buffer RAM at a power-up time, determining whether there is a memory block having a correctable read error based on the read error information of the buffer RAM, and replacing a memory block including the correctable read error with a spare memory block.
- Another aspect of the present disclosure includes a memory system comprising a flash memory device including a plurality of memory blocks, a memory controller which operates the flash memory device, wherein the memory controller is configured to determine whether a read error generated during a read operation of the flash memory device is caused by a read disturbance, and replace a memory block which includes the read error with a spare memory block if the read error is caused by the read disturbance.
- Yet another aspect of the present disclosure includes a memory system comprising a flash memory device including a plurality of memory blocks, a memory controller which operates the flash memory device, wherein the memory controller comprises a central processing unit, a buffer RAM which stores data read from the flash memory device under control of the central processing unit, and an error check and correction circuit which detects whether there is a read error in data transferred to the buffer RAM, wherein if there is a read error in the data transferred to the buffer RAM, the central processing unit determines whether the read error is caused by read disturbance based on a detection result of the error check and correction circuit, wherein if the read error is detected as being caused by the read disturbance, the central processing unit stores read error information of a memory block including the read error into the buffer RAM.
- the memory controller comprises a central processing unit, a buffer RAM which stores data read from the flash memory device under control of the central processing unit, and an error check and correction circuit which detects whether there is a read error in data transferred to the buffer RAM, wherein if there is a read error in
- FIG. 1 is a block diagram of a general flash memory device
- FIG. 2 is a timing diagram showing a read operation in the flash memory device shown in FIG. 1 ;
- FIG. 3 is a sectional schematic showing a soft programming effect due to read disturbance
- FIG. 4 is a diagram illustrating distribution profiles of threshold voltages corresponding to on and off-cells
- FIG. 5 is a graph showing correlations between read cycles and read fails
- FIG. 6 is a block diagram illustrating a memory system in accordance with an exemplary disclosed embodiment
- FIG. 7 is a flow chart showing an operational procedure to manage read errors in an exemplary disclosed embodiment of a memory system
- FIG. 8 is a flow chart showing an operational procedure for block replacement (or refresh) in the memory system of an exemplary disclosed embodiment
- FIG. 9 is a flow chart showing an operational procedure to manage read errors in the memory system according to an alternative exemplary disclosed embodiment.
- FIG. 10 is a schematic block diagram of a computing system including a memory controller and a flash memory device according to an exemplary disclosed embodiment.
- FIG. 6 is a block diagram illustrating a memory system 1000 according to an exemplary disclosed embodiment.
- the memory system 1000 is comprised of a flash memory device 100 and a memory controller 200 .
- the flash memory device 100 may include a NAND flash memory device that is well known in this art.
- the flash memory device 100 includes a memory cell array 110 and a read/write circuit 120 .
- the memory cell array 110 is divided into first and second fields 111 and 112 which store N-bit data information (N is a positive integer). Each of the first and second fields 111 and 112 may be composed of plural memory blocks.
- the memory blocks of the first field 111 are used to store user data and/or code data, while the memory blocks of the second field 112 are used to store meta-data for managing the memory blocks.
- the first field 111 may include spare memory blocks for block replacement.
- each memory block of the first and second fields 111 and 112 may be composed of main and spare regions.
- the main region stores normal data
- the spare region may store information (e.g., ECC data) relevant to data of the main region.
- the spare region may store other data in addition to ECC data.
- the meta-data stored in the second field 112 may contain table information that has read error information for the memory blocks of the first field 111 .
- This read error information denotes whether a permissible error has been generated during a read operation for a memory block of the first field 111 .
- the read error information is used to substitute a spare memory block for a memory block including the permissible error, which will be detailed later.
- This block replacement may make it possible to solve the error due to the read disturbance.
- the block replacement may be able to repair a read failure that causes an on-cell (or erased cell) to be detected as an off-cell due to the read disturbance.
- the block replacement may refresh a memory block where a permissible bit error occurs.
- the read/write circuit 120 may be formed to read and write data from and into the memory cell array 110 .
- the read/write circuit 120 may be comprised of a row decoder, a column decoder, a page buffer circuit, and a high voltage generator.
- the components of the read/write circuit 120 are well known in this art, so these will not be described further.
- a writing operation may include programming and erasing operations.
- the memory controller 200 is configured to control operations of the flash memory device 100 in response to requests from a host (e.g., a computing system).
- the memory controller 200 includes a host interface 210 , a flash interface 220 , a central processing unit (CPU) 230 as a processing unit, an error check and correction (ECC) circuit 240 , and a buffer RAM 250 .
- the host interface 210 is configured to interface the memory controller 200 with the host and the flash interface 220 is configured to interface the memory controller 200 with the flash memory device 100 .
- the CPU 230 is organized to control reading/writing operations of the flash memory device 100 in response to requests from the host.
- the ECC circuit 240 may be configured to generate ECC data from data (i.e., main data) transferred from the flash memory device 100 .
- the ECC data generated thereby are transferred to the flash memory device 100 so as to be stored in the spare region of a page containing main data.
- the ECC circuit 240 may be configured to detect errors on data read out from the flash memory device 100 . For example, if a correctable read error is detected from read data, the ECC circuit 240 operates to repair the error of the read data from the flash memory device 100 .
- the buffer RAM 250 may be used to temporarily store data read out from the flash memory device 100 or provided from the host.
- the buffer RAM 250 stores a flash translation layer (FTL) 251 .
- the FTL 251 may be operated by the CPU 230 .
- Functions of the FTL include management of mapping information about logical and physical addresses, management of bad blocks, management of data preservability against inadvertent power interruption, and management of durability.
- Exemplary FTL functions are disclosed in U.S. Pat. No. 5,404,485 entitled “FLASH FILE SYSTEM”, U.S. Pat. No. 5,937,425 entitled “FLASH FILE SYSTEM OPTIMIZED FOR PAGE-MODE FLASH TECHNOLOGIES”, and U.S. Pat. No. 6,381,176 entitled “METHOD OF DRIVING REMAPPING IN FLASH MEMORY AND FLASH MEMORY ARCHITECTURE SUITABLE THEREFOR”, all of which are incorporated by reference.
- the buffer RAM 250 may be used to store table information 252 necessary for managing read error information.
- the table information 252 is meta-data stored in the second field 112 of the flash memory device 100 .
- the table information 252 may be copied into the buffer RAM 250 from the second field 112 under control of the CPU 230 at a time of power-up.
- the CPU 230 updates the table information 252 so as to inform the system 1000 that there is a read error on a memory block including a page involved in the read operation.
- the updated table information will also be stored in the second field 112 of the flash memory device 100 under control of the CPU 230 along with every update of the table information 252 . If the table information 252 is updated, i.e., if a correctable read error is generated, a memory block including the read error will be replaced with a spare memory block belonging to the first field 111 of the memory cell array 110 under control of the CPU 230 . This process of block replacement may be carried out automatically under control of the CPU 230 at the power-up time or during the update of the table information, which will be detailed later. In this case, the memory block having the read error may be allocated to a spare memory block after being erased.
- FIG. 7 is a flow chart showing an operational procedure to manage read errors in the memory system according to an exemplary disclosed embodiment.
- the memory controller 200 When there is a request from a host for a read operation, the memory controller 200 operates to control the flash memory device 100 for the read operation (S 100 ). As is well known in the art, the memory controller 200 transfers a read command and address to the flash memory device 100 in accordance with a predetermined timing.
- the read/write circuit 120 of the flash memory device 100 reads data from a page of a memory block corresponding to the address input in response to the read command. The data read thereby may be transferred to the buffer RAM 250 through the flash interface 220 under control of the CPU 230 .
- a transmission path for read data may be implemented in various ways.
- read data may be transferred to the ECC circuit 240 and the buffer RAM 250 at the same time.
- the ECC circuit 240 is able to detect a read error by means of ECC data after completing the data transmission to the buffer RAM 250 .
- the read data can be transferred to the buffer RAM 250 by way of the ECC circuit 240 .
- the ECC circuit 240 is able to detect a read error by means of ECC data before completing the data transmission to the buffer RAM 250 .
- the read data is stored in the buffer RAM 250 and then the ECC circuit 240 detects a read error by reading the read data stored in the buffer RAM 250 .
- the read data is transferred into the ECC circuit 240 and then the buffer RAM 250 .
- the ECC circuit 240 uses ECC data to find whether there is an error in the read data, and then stores results of the determination, i.e., the number of error bits and error-positional information (e.g., address information), which represents the number and positions of error bits, into an internal register. After completing the ECC operation, the CPU 230 determines, according to information stored in the ECC circuit 240 , whether there is a read error. If it determines there is no read error on the read data, the read data stored in the buffer RAM 250 is transferred into a host through the host interface 210 and thereafter the read operation is terminated.
- the CPU 230 determines, according to the information included in the error bit number stored in the ECC circuit 240 , whether the current number of error bits is over the allowed number of error bits (S 120 ). If the number of error bits on the read data is found as being over the allowed number of error bits, the CPU 230 puts the memory block, which includes the read error, into a bad block by means of FTL (S 130 ). On the other hand, if the current number of error bits on the erroneous read data is not over than the allowed number of error bits, the CPU 230 then determines whether the read error is caused by read disturbance (S 140 ).
- whether a read error is caused by read disturbance or not may be determined by reading erroneous data from the buffer RAM 250 by means of positional information stored in the ECC circuit and detecting whether the read data is a logic ‘0’.
- a read error due to read disturbance generally means that data of logical ‘1’ (corresponding to an erased state of a memory cell) changes to data of logical ‘0’ (corresponding to a programmed state of a memory cell).
- a read error due to read disturbance means that an erased cell is detected as a programmed cell.
- the CPU 230 corrects the error of data stored in the buffer RAM 250 (S 150 ). For example, the CPU 230 reads data from the buffer RAM 250 with reference to the information (i.e., error-positional information) stored in the ECC circuit 240 , corrects the read data, and then stores error-corrected data in the buffer RAM 250 .
- correcting an error in data may be carried out by the ECC circuit 240 under control of the CPU 230 .
- erroneous data may be read from the buffer RAM 250 under control of CPU 230 , and such erroneous data read out may be transferred to the ECC circuit 240 .
- the ECC circuit 240 then corrects the erroneous data and error-corrected data is stored back in the buffer RAM 250 under control of the CPU 230 .
- data stored in the buffer RAM 250 is transferred to the host and the read operation is terminated.
- the table information 252 stored in the buffer RAM 250 is updated by the CPU 230 so as to represent the generation of a correctable read error in the appropriate memory block (S 170 ).
- the updated table information 252 is stored in the second field 112 of the memory cell array 110 under control by the CPU 230 .
- the read operation is terminated after transferring data from the buffer RAM 250 to the host through the host interface 210 .
- the time taken to store the updated table information 252 in the second field 112 of the memory cell array 110 may be variable.
- the time taken to store updated table information 252 in the second field 112 of the memory cell array 110 may depend on the operating speed of the memory controller 200 .
- the time taken to store the updated table information 252 in the memory cell array 110 may depend on the type of memory controller 200 used in the system 1000 .
- the time for storing the updated table information 252 in the second field 112 of the memory cell array 110 may depend on other factors too such as, for example, the distance between the memory controller 200 and the flash memory device 100 .
- the steps S 110 , S 120 , S 140 , S 150 , and S 160 may be carried out through the ECC circuit 240 instead of the CPU 230 .
- the ECC circuit 240 determines whether the number of error bits in data having a read error is over the allowed number of error bits. If the number of error bits in data having a read error is detected as being over the allowed number of error bits, the ECC circuit 240 informs the CPU 230 that there is an incorrectable read error. Then, the CPU 230 uses the FTL 251 to put the memory block (which has a read error), into a bad block.
- the ECC circuit 240 determines whether the read error is caused by read disturbance. If the read error is not because of read disturbance, the ECC circuit 240 corrects the data error stored in the buffer RAM 250 . To this end, correction of the data error may be carried out by the ECC circuit 240 under control of the CPU 230 . For example, erroneous data may be read out from the buffer RAM 250 under control of the CPU 230 , and the erroneous data read out may be transferred to the ECC circuit 240 . The ECC circuit 240 may then correct the erroneous data and the error-corrected data is stored in the buffer RAM 250 under control of the CPU 230 .
- the data stored in the buffer RAM 250 may be transferred to the host by way of the host interface 210 , thus terminating the read operation.
- the ECC circuit 240 corrects the read error of data stored in the buffer RAM 250 as stated above.
- FIG. 8 is a flow chart showing an operational procedure for block replacement (or refresh) in the memory system of an exemplary disclosed embodiment.
- a power supply voltage is supplied to the memory system 1000 (S 200 )
- the table information stored in the second field 112 of the flash memory device 100 is copied into the buffer RAM 250 of the memory controller 200 (S 210 ).
- the CPU 230 determines whether there is a memory block having a correctable read error. If there is a memory block that includes a correctable read error, data of the memory block including the correctable read error is copied into a spare memory block. Namely, a memory block having a correctable read error is replaced by a spare memory block (S 230 ).
- erroneous data among data of the memory block having a correctable read error is repaired by the ECC circuit 240 , and the error-corrected data is copied into the spare memory block.
- data stored in each page of a memory block having a correctable read error is read out through the read/write circuit 120 , and temporarily stored in the buffer RAM 250 in the same manner as aforementioned.
- the erroneous data may be corrected by the same procedure as aforementioned.
- Data stored in the buffer RAM 250 is stored in corresponding pages of a spare memory block through the read/write circuit 120 .
- FIG. 9 is a flow chart showing an operational procedure to manage read errors in the memory system according to an alternative exemplary disclosed embodiment.
- the procedure shown in FIG. 9 is substantially similar to that of FIG. 7 , except that the block replacement is carried out before a power-off time.
- S 300 ⁇ S 370 are similar to the steps S 100 ⁇ S 170 of FIG. 7 in substance, so these processes will not be discussed again.
- an operation for block replacement is carried out for a memory block having a correctable read error. Namely, a memory block having a correctable read error is refreshed.
- This block replacement is substantially similar to that described with respect to FIG. 8 , so it will not be discussed again.
- Flash memory devices are nonvolatile memories capable of storing data even in the event of a power loss.
- mobile apparatuses such as cellular phones, personal digital assistants (PDA), digital cameras, portable gaming consoles, and MP3, flash memory devices are widely employed as code storage and data storage devices.
- flash memory devices may also be utilized in home applications such as high-definition TVs, digital versatile disks (DVDs), routers, and global positioning systems (GPSs).
- GPSs global positioning systems
- FIG. 10 shows a schematic computing system including the exemplary disclosed flash memory device and memory controller.
- the exemplary disclosed computing system includes a microprocessor 410 electrically connected to a bus 401 , a use interface 420 , a modem 460 such as a baseband chipset, a memory controller 440 , and the flash memory device 450 .
- the memory controller 440 and the flash memory device 450 may be configured as discussed above.
- N-bit data (N is a positive integer) to be processed by the microprocessor 410 are stored through the memory controller 440 .
- the computing system shown in FIG. 11 is a mobile apparatus, it may further include a battery 430 which supplies power to the system.
- the computing system may further include other components such as an application chipset, a camera image processor (e.g., CMOS image sensor; CIS), a mobile DRAM, etc.
- the above-described memory system may be used in any electronic device.
- the system may be able to reduce the probability of generating a correctable read error by refreshing a memory block having a read error due to read disturbance. Therefore, the disclosed system may improve the reliability of a flash memory device and a memory system including the flash memory device.
Abstract
A method for operating a memory system including a flash memory device having a plurality of memory blocks includes determining whether a read error generated during a read operation of the flash memory device is caused by read disturbance and replacing a memory block which includes the read error, with a spare memory block if the read error is caused by read disturbance.
Description
- This application is a continuation application of application Ser. No. 11/710,991 filed on Feb. 27, 2007, which is hereby incorporated for all purposes.
- 1. Field of the Invention
- The present disclosure generally relates to semiconductor memory devices and, more particularly, to a system which efficiently processes erroneous bits generated in a flash memory device.
- A claim of priority under 35 U.S.C. §119 is made to Korean Patent Application No. 2006-85865, filed Sep. 6, 2006, the entire contents of which are hereby incorporated by reference.
- 2. Description of the Related Art
- Many memory devices may inadvertently store defective data due to various reasons. In order to rectify this situation, various technologies for error detection and correction are used to recover or restore defective data. Data may be defective for various reasons. For example, data could be corrupted due to a variety of factors while being stored in a memory, or due to perturbations of data transmission channels between a source and destination.
- Various approaches have been proposed to detect and correct defective data stored in memory devices. To this end, some of the well-known data error detecting and correcting techniques are the Reed-Solomon (RS) codes, Hamming codes, Bose-Chaudhury-Hocquenghem (BCH) codes, cyclic redundancy codes (CRC), and so forth. Moreover, in most applications employing nonvolatile memory devices, data is stored in these memory devices along with data known as error correction codes (ECC) (hereinafter, referred to as ‘ECC data’). ECC data are provided to correct erroneous bits generated during a read operation in a flash memory device. However, the number of error bits that are correctable by ECC data is limited.
-
FIG. 1 is a block diagram of a general flash memory device, andFIG. 2 is a timing diagram showing a read operation in the flash memory device shown inFIG. 1 . First, referring toFIG. 1 , a general flash memory device includes a memory cell array that has pluralities of memory blocks. Specifically,FIG. 1 shows a single memory block, e.g., BLK0. The memory block BLK0 has strings (or NAND strings) 10, each being connected to columns or bit lines. Each string includes a string selection transistor SST, a ground selection transistor GST, and memory cells (or memory cell transistors). Furthermore, each string also includes memory cells MC0˜MCn−1 serially connected between the selection transistors SST and GST. Gates of the selection transistors SST and GST are each coupled to string and ground selection lines SSL and GSL corresponding thereto, while control gates of the memory cell transistors MC0˜MCn−1 are coupled to word lines WL0˜WLn−1 corresponding thereto. In addition, bit lines BL0˜BLm−1 are connected to page buffers PB corresponding thereto. - In the read operation, as illustrated in
FIG. 2 , a selected word line (e.g., WL0) is driven with a voltage of 0V, while deselected word lines (e.g., WL1˜WLn−1) are driven with a read voltage Vread. During this operation, the string and ground selection lines SSL and GSL are driven with the read voltage Vread and the page buffers PB supply sensing currents to their corresponding bit lines BL0˜BLm−1. Voltages of the bit lines BL0˜BLm−1 may be determined by conditions of the memory cells coupled to the selected word line. For example, if the memory cell coupled to the selected word line is an on-cell, the bit line voltage corresponding thereto falls down to a ground voltage. In contrast, if the memory cell coupled to the selected word line is an off-cell, the bit line voltage corresponding thereto rises up to a power source voltage. Furthermore, the bit line voltages are detected by the page buffers PB as cell data. - For convenience of description, a memory cell coupled to a deselected word line is referred to as a deselected memory cell and a memory cell coupled to a selected word line is referred to as a selected memory cell. As stated above, in order to read data from the selected memory cell, the word lines of the deselected memory cell are supplied with the read voltage Vread. In particular, the read voltage Vread is set to a voltage level that is enough to turn on a memory cell transistor being conditioned in an off-state. During the read operation, the read voltage Vread is applied to the control gates of the deselected memory cell transistors, while the ground voltage is applied to a substrate (or bulk) of the deselected memory cell transistors. Furthermore, a predetermined voltage is applied to drains of the deselected memory cell transistors. This bias condition is similar to that for programming a cell. Because of that, as shown in
FIG. 3 , electrons may be injected into a floating gate of the deselected memory cell transistor from the substrate during the read operation. That is, the deselected memory cell transistors in on-states (or erased states) are softly programmed under the bias condition of the read operation, which is referred to as ‘read disturbance’ in general. This ‘read disturbance’ may be problematic. - For example, the read disturbance may gradually increase threshold voltages of memory cells conditioned in on-states (or erased states). As shown by dashed lines of
FIG. 4 , threshold voltages of the on-state memory cells may increase with the repetition of the read operation. This phenomenon may make an on-state memory cell be erroneously detected as an off-cell. This erroneous state detection of the cell because of an increase in the threshold voltage due to the read disturbance may cause a read failure. - As mentioned above, bit errors generated from the read operation can be repaired by techniques such as error detection and correction without any other remedial procedure such as a process of block replacement. Referring to
FIG. 5 , the probability of read failure may gradually increase with a repetition of the read operation. That is, data corrected by an error detection/correction operation is highly probable to have another error during the next read operation. When the number of error bits in read data is larger than the permitted number of error bits, a reserved memory block, which is additionally provided to a flash memory device, may be substituted for a memory block including defective data by using a remedial process such as block replacement. - Thus, as described above, once the read data includes error bits under the permitted error bit number, the error bits are repaired by means of a given process of error detection and correction. However, even when the read data has been for errors, it is very probable that the error-corrected data may have another error after the read operation. Therefore, there is a need for a technique to improve the reliability of error-corrected data.
- One aspect of the present disclosure includes a method for operating a memory system including a flash memory device having a plurality of memory blocks, the method comprising determining whether a read error generated during a read operation of the flash memory device is caused by read disturbance and replacing a memory block which includes the read error, with a spare memory block if the read error is caused by read disturbance.
- Another aspect of the present disclosure includes a method for operating a memory system including a flash memory device having a plurality of memory blocks, the method comprising copying read error information from the flash memory device into a buffer RAM at a power-up time, determining whether there is a memory block having a correctable read error based on the read error information of the buffer RAM, and replacing a memory block including the correctable read error with a spare memory block.
- Another aspect of the present disclosure includes a memory system comprising a flash memory device including a plurality of memory blocks, a memory controller which operates the flash memory device, wherein the memory controller is configured to determine whether a read error generated during a read operation of the flash memory device is caused by a read disturbance, and replace a memory block which includes the read error with a spare memory block if the read error is caused by the read disturbance.
- Yet another aspect of the present disclosure includes a memory system comprising a flash memory device including a plurality of memory blocks, a memory controller which operates the flash memory device, wherein the memory controller comprises a central processing unit, a buffer RAM which stores data read from the flash memory device under control of the central processing unit, and an error check and correction circuit which detects whether there is a read error in data transferred to the buffer RAM, wherein if there is a read error in the data transferred to the buffer RAM, the central processing unit determines whether the read error is caused by read disturbance based on a detection result of the error check and correction circuit, wherein if the read error is detected as being caused by the read disturbance, the central processing unit stores read error information of a memory block including the read error into the buffer RAM.
- Non-limiting and non-exhaustive embodiments of the present invention will be described with reference to the following figures, wherein like reference numerals refer to like parts throughout the various figures unless otherwise specified. In the figures:
-
FIG. 1 is a block diagram of a general flash memory device; -
FIG. 2 is a timing diagram showing a read operation in the flash memory device shown inFIG. 1 ; -
FIG. 3 is a sectional schematic showing a soft programming effect due to read disturbance; -
FIG. 4 is a diagram illustrating distribution profiles of threshold voltages corresponding to on and off-cells; -
FIG. 5 is a graph showing correlations between read cycles and read fails; -
FIG. 6 is a block diagram illustrating a memory system in accordance with an exemplary disclosed embodiment; -
FIG. 7 is a flow chart showing an operational procedure to manage read errors in an exemplary disclosed embodiment of a memory system; -
FIG. 8 is a flow chart showing an operational procedure for block replacement (or refresh) in the memory system of an exemplary disclosed embodiment; -
FIG. 9 is a flow chart showing an operational procedure to manage read errors in the memory system according to an alternative exemplary disclosed embodiment; and -
FIG. 10 is a schematic block diagram of a computing system including a memory controller and a flash memory device according to an exemplary disclosed embodiment. - Exemplary embodiments of the present invention will be described below in more detail with reference to the accompanying drawings, using a flash memory device as an example for illustrating structural and operational features by the invention. The present invention may, however, be embodied in different forms and should not be constructed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the present invention to those skilled in the art. Like reference numerals refer to like elements throughout the accompanying figures.
-
FIG. 6 is a block diagram illustrating amemory system 1000 according to an exemplary disclosed embodiment. Referring toFIG. 6 , thememory system 1000 is comprised of aflash memory device 100 and amemory controller 200. Theflash memory device 100 may include a NAND flash memory device that is well known in this art. Theflash memory device 100 includes amemory cell array 110 and a read/write circuit 120. Thememory cell array 110 is divided into first andsecond fields 111 and 112 which store N-bit data information (N is a positive integer). Each of the first andsecond fields 111 and 112 may be composed of plural memory blocks. For example, the memory blocks of the first field 111 are used to store user data and/or code data, while the memory blocks of thesecond field 112 are used to store meta-data for managing the memory blocks. Furthermore, the first field 111 may include spare memory blocks for block replacement. In addition, each memory block of the first andsecond fields 111 and 112 may be composed of main and spare regions. The main region stores normal data, while the spare region may store information (e.g., ECC data) relevant to data of the main region. However, in an exemplary disclosed embodiment, the spare region may store other data in addition to ECC data. - In an exemplary disclosed embodiment, the meta-data stored in the
second field 112, as described later, may contain table information that has read error information for the memory blocks of the first field 111. This read error information denotes whether a permissible error has been generated during a read operation for a memory block of the first field 111. The read error information is used to substitute a spare memory block for a memory block including the permissible error, which will be detailed later. This block replacement may make it possible to solve the error due to the read disturbance. In other words, the block replacement may be able to repair a read failure that causes an on-cell (or erased cell) to be detected as an off-cell due to the read disturbance. Thus, the block replacement may refresh a memory block where a permissible bit error occurs. - The read/
write circuit 120 may be formed to read and write data from and into thememory cell array 110. Although not shown in the figures, the read/write circuit 120 may be comprised of a row decoder, a column decoder, a page buffer circuit, and a high voltage generator. The components of the read/write circuit 120 are well known in this art, so these will not be described further. In an exemplary embodiment, a writing operation may include programming and erasing operations. - Referring to
FIG. 6 , thememory controller 200 is configured to control operations of theflash memory device 100 in response to requests from a host (e.g., a computing system). Thememory controller 200 includes ahost interface 210, aflash interface 220, a central processing unit (CPU) 230 as a processing unit, an error check and correction (ECC)circuit 240, and abuffer RAM 250. Thehost interface 210 is configured to interface thememory controller 200 with the host and theflash interface 220 is configured to interface thememory controller 200 with theflash memory device 100. TheCPU 230 is organized to control reading/writing operations of theflash memory device 100 in response to requests from the host. TheECC circuit 240 may be configured to generate ECC data from data (i.e., main data) transferred from theflash memory device 100. The ECC data generated thereby are transferred to theflash memory device 100 so as to be stored in the spare region of a page containing main data. In addition, theECC circuit 240 may be configured to detect errors on data read out from theflash memory device 100. For example, if a correctable read error is detected from read data, theECC circuit 240 operates to repair the error of the read data from theflash memory device 100. Furthermore, thebuffer RAM 250 may be used to temporarily store data read out from theflash memory device 100 or provided from the host. In addition, thebuffer RAM 250 stores a flash translation layer (FTL) 251. TheFTL 251 may be operated by theCPU 230. - Functions of the FTL include management of mapping information about logical and physical addresses, management of bad blocks, management of data preservability against inadvertent power interruption, and management of durability. Exemplary FTL functions are disclosed in U.S. Pat. No. 5,404,485 entitled “FLASH FILE SYSTEM”, U.S. Pat. No. 5,937,425 entitled “FLASH FILE SYSTEM OPTIMIZED FOR PAGE-MODE FLASH TECHNOLOGIES”, and U.S. Pat. No. 6,381,176 entitled “METHOD OF DRIVING REMAPPING IN FLASH MEMORY AND FLASH MEMORY ARCHITECTURE SUITABLE THEREFOR”, all of which are incorporated by reference.
- In an exemplary disclosed embodiment, the
buffer RAM 250 may be used to storetable information 252 necessary for managing read error information. Thetable information 252 is meta-data stored in thesecond field 112 of theflash memory device 100. In an exemplary embodiment, thetable information 252 may be copied into thebuffer RAM 250 from thesecond field 112 under control of theCPU 230 at a time of power-up. Thus, for example, if read data includes error bits such that the number of error bits are correctable by theECC circuit 230, theCPU 230 updates thetable information 252 so as to inform thesystem 1000 that there is a read error on a memory block including a page involved in the read operation. It may be beneficial if the updated table information will also be stored in thesecond field 112 of theflash memory device 100 under control of theCPU 230 along with every update of thetable information 252. If thetable information 252 is updated, i.e., if a correctable read error is generated, a memory block including the read error will be replaced with a spare memory block belonging to the first field 111 of thememory cell array 110 under control of theCPU 230. This process of block replacement may be carried out automatically under control of theCPU 230 at the power-up time or during the update of the table information, which will be detailed later. In this case, the memory block having the read error may be allocated to a spare memory block after being erased. -
FIG. 7 is a flow chart showing an operational procedure to manage read errors in the memory system according to an exemplary disclosed embodiment. When there is a request from a host for a read operation, thememory controller 200 operates to control theflash memory device 100 for the read operation (S100). As is well known in the art, thememory controller 200 transfers a read command and address to theflash memory device 100 in accordance with a predetermined timing. In addition, the read/write circuit 120 of theflash memory device 100 reads data from a page of a memory block corresponding to the address input in response to the read command. The data read thereby may be transferred to thebuffer RAM 250 through theflash interface 220 under control of theCPU 230. - While transferring data to the
buffer RAM 250, the system determines whether a read error has been generated from the read data (S110). To this end, a transmission path for read data may be implemented in various ways. For example, read data may be transferred to theECC circuit 240 and thebuffer RAM 250 at the same time. In this case, theECC circuit 240 is able to detect a read error by means of ECC data after completing the data transmission to thebuffer RAM 250. On the other hand, the read data can be transferred to thebuffer RAM 250 by way of theECC circuit 240. In this case, theECC circuit 240 is able to detect a read error by means of ECC data before completing the data transmission to thebuffer RAM 250. Alternatively, the read data is stored in thebuffer RAM 250 and then theECC circuit 240 detects a read error by reading the read data stored in thebuffer RAM 250. Beneficially, the read data is transferred into theECC circuit 240 and then thebuffer RAM 250. - The
ECC circuit 240 uses ECC data to find whether there is an error in the read data, and then stores results of the determination, i.e., the number of error bits and error-positional information (e.g., address information), which represents the number and positions of error bits, into an internal register. After completing the ECC operation, theCPU 230 determines, according to information stored in theECC circuit 240, whether there is a read error. If it determines there is no read error on the read data, the read data stored in thebuffer RAM 250 is transferred into a host through thehost interface 210 and thereafter the read operation is terminated. - On the other hand, if the
circuit 240 determines there is a read error from the read data, theCPU 230 determines, according to the information included in the error bit number stored in theECC circuit 240, whether the current number of error bits is over the allowed number of error bits (S120). If the number of error bits on the read data is found as being over the allowed number of error bits, theCPU 230 puts the memory block, which includes the read error, into a bad block by means of FTL (S130). On the other hand, if the current number of error bits on the erroneous read data is not over than the allowed number of error bits, theCPU 230 then determines whether the read error is caused by read disturbance (S140). - In an exemplary embodiment, whether a read error is caused by read disturbance or not may be determined by reading erroneous data from the
buffer RAM 250 by means of positional information stored in the ECC circuit and detecting whether the read data is a logic ‘0’. This is because a read error due to read disturbance generally means that data of logical ‘1’ (corresponding to an erased state of a memory cell) changes to data of logical ‘0’ (corresponding to a programmed state of a memory cell). In other words, a read error due to read disturbance means that an erased cell is detected as a programmed cell. - If a read error is detected as not being caused by read disturbance, the
CPU 230 corrects the error of data stored in the buffer RAM 250 (S150). For example, theCPU 230 reads data from thebuffer RAM 250 with reference to the information (i.e., error-positional information) stored in theECC circuit 240, corrects the read data, and then stores error-corrected data in thebuffer RAM 250. In an alternative exemplary embodiment, correcting an error in data may be carried out by theECC circuit 240 under control of theCPU 230. For example, erroneous data may be read from thebuffer RAM 250 under control ofCPU 230, and such erroneous data read out may be transferred to theECC circuit 240. TheECC circuit 240 then corrects the erroneous data and error-corrected data is stored back in thebuffer RAM 250 under control of theCPU 230. Next, data stored in thebuffer RAM 250 is transferred to the host and the read operation is terminated. - If a read error is detected as being caused by read disturbance, as mentioned above, an error in the data stored in the
buffer RAM 250 is corrected by theCPU 230 or the ECC circuit 240 (S160). Furthermore, thetable information 252 stored in thebuffer RAM 250 is updated by theCPU 230 so as to represent the generation of a correctable read error in the appropriate memory block (S170). In an exemplary embodiment, the updatedtable information 252 is stored in thesecond field 112 of thememory cell array 110 under control by theCPU 230. The read operation is terminated after transferring data from thebuffer RAM 250 to the host through thehost interface 210. In an exemplary embodiment, the time taken to store the updatedtable information 252 in thesecond field 112 of thememory cell array 110 may be variable. For example, after transferring data from thebuffer RAM 250 to the host through thehost interface 210, the time taken to store updatedtable information 252 in thesecond field 112 of thememory cell array 110 may depend on the operating speed of thememory controller 200. Thus, the time taken to store the updatedtable information 252 in thememory cell array 110 may depend on the type ofmemory controller 200 used in thesystem 1000. One skilled in the art will appreciate that the time for storing the updatedtable information 252 in thesecond field 112 of thememory cell array 110 may depend on other factors too such as, for example, the distance between thememory controller 200 and theflash memory device 100. - Furthermore, in exemplary disclosed embodiments, the steps S110, S120, S140, S150, and S160 may be carried out through the
ECC circuit 240 instead of theCPU 230. For example, theECC circuit 240 determines whether the number of error bits in data having a read error is over the allowed number of error bits. If the number of error bits in data having a read error is detected as being over the allowed number of error bits, theECC circuit 240 informs theCPU 230 that there is an incorrectable read error. Then, theCPU 230 uses theFTL 251 to put the memory block (which has a read error), into a bad block. If the number of error bits on data having a read error is detected as not being over the allowed number of error bits, theECC circuit 240 determines whether the read error is caused by read disturbance. If the read error is not because of read disturbance, theECC circuit 240 corrects the data error stored in thebuffer RAM 250. To this end, correction of the data error may be carried out by theECC circuit 240 under control of theCPU 230. For example, erroneous data may be read out from thebuffer RAM 250 under control of theCPU 230, and the erroneous data read out may be transferred to theECC circuit 240. TheECC circuit 240 may then correct the erroneous data and the error-corrected data is stored in thebuffer RAM 250 under control of theCPU 230. Then, the data stored in thebuffer RAM 250 may be transferred to the host by way of thehost interface 210, thus terminating the read operation. On the other hand, if a read error is detected as being caused by read disturbance, theECC circuit 240 corrects the read error of data stored in thebuffer RAM 250 as stated above. -
FIG. 8 is a flow chart showing an operational procedure for block replacement (or refresh) in the memory system of an exemplary disclosed embodiment. When a power supply voltage is supplied to the memory system 1000 (S200), the table information stored in thesecond field 112 of theflash memory device 100 is copied into thebuffer RAM 250 of the memory controller 200 (S210). Next, theCPU 230 determines whether there is a memory block having a correctable read error. If there is a memory block that includes a correctable read error, data of the memory block including the correctable read error is copied into a spare memory block. Namely, a memory block having a correctable read error is replaced by a spare memory block (S230). Specifically, erroneous data among data of the memory block having a correctable read error is repaired by theECC circuit 240, and the error-corrected data is copied into the spare memory block. In detail, data stored in each page of a memory block having a correctable read error is read out through the read/write circuit 120, and temporarily stored in thebuffer RAM 250 in the same manner as aforementioned. During this process, when an error is detected in read data, the erroneous data may be corrected by the same procedure as aforementioned. Data stored in thebuffer RAM 250 is stored in corresponding pages of a spare memory block through the read/write circuit 120. Once data of the memory block having a correctable read error is copied into the spare memory block, an operation requested by the host is carried out (S240). If it is determined that a correctable read error is absent in a memory block, the procedure goes to the step S240. -
FIG. 9 is a flow chart showing an operational procedure to manage read errors in the memory system according to an alternative exemplary disclosed embodiment. The procedure shown inFIG. 9 is substantially similar to that ofFIG. 7 , except that the block replacement is carried out before a power-off time. InFIG. 9 , S300˜S370 are similar to the steps S100˜S170 ofFIG. 7 in substance, so these processes will not be discussed again. As shown inFIG. 9 , at step S380, an operation for block replacement is carried out for a memory block having a correctable read error. Namely, a memory block having a correctable read error is refreshed. This block replacement is substantially similar to that described with respect toFIG. 8 , so it will not be discussed again. - Flash memory devices are nonvolatile memories capable of storing data even in the event of a power loss. With a rapid increase in the use of mobile apparatuses such as cellular phones, personal digital assistants (PDA), digital cameras, portable gaming consoles, and MP3, flash memory devices are widely employed as code storage and data storage devices. Furthermore, flash memory devices may also be utilized in home applications such as high-definition TVs, digital versatile disks (DVDs), routers, and global positioning systems (GPSs).
-
FIG. 10 shows a schematic computing system including the exemplary disclosed flash memory device and memory controller. The exemplary disclosed computing system includes amicroprocessor 410 electrically connected to abus 401, ause interface 420, amodem 460 such as a baseband chipset, amemory controller 440, and theflash memory device 450. To this end, thememory controller 440 and theflash memory device 450 may be configured as discussed above. In theflash memory device 450, N-bit data (N is a positive integer) to be processed by themicroprocessor 410 are stored through thememory controller 440. If the computing system shown inFIG. 11 is a mobile apparatus, it may further include abattery 430 which supplies power to the system. Furthermore, although not shown inFIG. 11 , the computing system may further include other components such as an application chipset, a camera image processor (e.g., CMOS image sensor; CIS), a mobile DRAM, etc. - The above-described memory system may be used in any electronic device. The system may be able to reduce the probability of generating a correctable read error by refreshing a memory block having a read error due to read disturbance. Therefore, the disclosed system may improve the reliability of a flash memory device and a memory system including the flash memory device.
- The above-disclosed subject matter is to be considered illustrative, and not restrictive, and the appended claims are intended to cover all such modifications, enhancements, and other embodiments, which fall within the true spirit and scope of the present invention. Thus, to the maximum extent allowed by law, the scope of the present invention is to be determined by the broadest permissible interpretation of the following claims and their equivalents, and shall not be restricted or limited by the foregoing detailed description.
Claims (1)
1. A method of operating a memory system, the memory system including a flash memory device having a plurality of memory blocks, said method comprising:
determining whether a read error generated during a read operation of the flash memory device is caused by a read disturbance; and
replacing a memory block which includes the read error with a spare memory block if the read error is caused by the read disturbance,
wherein the read disturbance is caused by programming of a memory cell of a deselected word line during reading of a memory cell of a selected word line.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/897,869 US20110026326A1 (en) | 2006-09-06 | 2010-10-05 | Memory system including flash memory and method of operating the same |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060085865A KR100802059B1 (en) | 2006-09-06 | 2006-09-06 | Memory system capable of suppressing generation of bad blocks due to read disturbance and operating method thereof |
KR2006-85865 | 2006-09-06 | ||
US11/710,991 US7826263B2 (en) | 2006-09-06 | 2007-02-27 | Memory system including flash memory and method of operating the same |
US12/897,869 US20110026326A1 (en) | 2006-09-06 | 2010-10-05 | Memory system including flash memory and method of operating the same |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/710,991 Continuation US7826263B2 (en) | 2006-09-06 | 2007-02-27 | Memory system including flash memory and method of operating the same |
Publications (1)
Publication Number | Publication Date |
---|---|
US20110026326A1 true US20110026326A1 (en) | 2011-02-03 |
Family
ID=39151282
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/710,991 Expired - Fee Related US7826263B2 (en) | 2006-09-06 | 2007-02-27 | Memory system including flash memory and method of operating the same |
US12/897,869 Abandoned US20110026326A1 (en) | 2006-09-06 | 2010-10-05 | Memory system including flash memory and method of operating the same |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US11/710,991 Expired - Fee Related US7826263B2 (en) | 2006-09-06 | 2007-02-27 | Memory system including flash memory and method of operating the same |
Country Status (4)
Country | Link |
---|---|
US (2) | US7826263B2 (en) |
JP (1) | JP5138319B2 (en) |
KR (1) | KR100802059B1 (en) |
CN (1) | CN101183563B (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090164871A1 (en) * | 2007-12-20 | 2009-06-25 | Samsung Electronics Co., Ltd. | Semiconductor Memory Devices that are Configured to Analyze Read Failures and Related Methods of Operating Such Devices |
US20100223532A1 (en) * | 2009-03-02 | 2010-09-02 | Samsung Electronics Co., Ltd. | Systems, devices and methods using redundant error correction code bit storage |
US20150248322A1 (en) * | 2014-02-28 | 2015-09-03 | Kabushiki Kaisha Toshiba | Memory controller and memory system |
CN110442298A (en) * | 2018-05-02 | 2019-11-12 | 杭州海康威视系统技术有限公司 | Store unit exception detection method and device, distributed memory system |
Families Citing this family (106)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7937647B2 (en) * | 2007-07-27 | 2011-05-03 | Actel Corporation | Error-detecting and correcting FPGA architecture |
WO2009095902A2 (en) * | 2008-01-31 | 2009-08-06 | Densbits Technologies Ltd. | Systems and methods for handling immediate data errors in flash memory |
US8650352B2 (en) * | 2007-09-20 | 2014-02-11 | Densbits Technologies Ltd. | Systems and methods for determining logical values of coupled flash memory cells |
US8694715B2 (en) | 2007-10-22 | 2014-04-08 | Densbits Technologies Ltd. | Methods for adaptively programming flash memory devices and flash memory systems incorporating same |
US8443242B2 (en) | 2007-10-25 | 2013-05-14 | Densbits Technologies Ltd. | Systems and methods for multiple coding rates in flash devices |
WO2009072103A2 (en) | 2007-12-05 | 2009-06-11 | Densbits Technologies Ltd. | Flash memory apparatus and methods using a plurality of decoding stages including optional use of concatenated bch codes and/or designation of 'first below' cells |
WO2009072104A2 (en) * | 2007-12-05 | 2009-06-11 | Densbits Technologies Ltd. | Flash memory device with physical cell value deterioration accommodation and methods useful in conjunction therewith |
US8607128B2 (en) * | 2007-12-05 | 2013-12-10 | Densbits Technologies Ltd. | Low power chien-search based BCH/RS decoding system for flash memory, mobile communications devices and other applications |
US8276051B2 (en) * | 2007-12-12 | 2012-09-25 | Densbits Technologies Ltd. | Chien-search system employing a clock-gating scheme to save power for error correction decoder and other applications |
US8359516B2 (en) | 2007-12-12 | 2013-01-22 | Densbits Technologies Ltd. | Systems and methods for error correction and decoding on multi-level physical media |
US8327246B2 (en) | 2007-12-18 | 2012-12-04 | Densbits Technologies Ltd. | Apparatus for coding at a plurality of rates in multi-level flash memory systems, and methods useful in conjunction therewith |
WO2009118720A2 (en) * | 2008-03-25 | 2009-10-01 | Densbits Technologies Ltd. | Apparatus and methods for hardware-efficient unbiased rounding |
US8031521B1 (en) * | 2008-05-20 | 2011-10-04 | Marvell International Ltd. | Reprogramming non-volatile memory devices for read disturbance mitigation |
TWI473117B (en) * | 2008-06-04 | 2015-02-11 | A Data Technology Co Ltd | Flash storage device with data correction function |
CN101615420B (en) * | 2008-06-26 | 2014-01-08 | 威刚科技股份有限公司 | Flash memory storage device with data correction function |
US8332725B2 (en) | 2008-08-20 | 2012-12-11 | Densbits Technologies Ltd. | Reprogramming non volatile memory portions |
KR101483190B1 (en) * | 2008-09-05 | 2015-01-19 | 삼성전자주식회사 | Memory system and data processing method thereof |
WO2010043245A1 (en) * | 2008-10-13 | 2010-04-22 | Hyperstone Gmbh | Method for backing up an anchor block in flash memories |
CN102855943B (en) * | 2008-11-28 | 2017-04-12 | 群联电子股份有限公司 | Error correction controller, flash memory chip system thereof and error correction method |
KR101543325B1 (en) | 2008-12-17 | 2015-08-10 | 삼성전자주식회사 | Flash memory device and reading method thereof |
EP2228150B1 (en) * | 2009-03-13 | 2012-06-13 | Siemens Aktiengesellschaft | Producing stacked lamina elements by combining a cut out and a stacking procedure |
US8819385B2 (en) | 2009-04-06 | 2014-08-26 | Densbits Technologies Ltd. | Device and method for managing a flash memory |
US8458574B2 (en) * | 2009-04-06 | 2013-06-04 | Densbits Technologies Ltd. | Compact chien-search based decoding apparatus and method |
US8566510B2 (en) | 2009-05-12 | 2013-10-22 | Densbits Technologies Ltd. | Systems and method for flash memory management |
US9377960B2 (en) | 2009-07-29 | 2016-06-28 | Hgst Technologies Santa Ana, Inc. | System and method of using stripes for recovering data in a flash storage system |
US8453021B2 (en) * | 2009-07-29 | 2013-05-28 | Stec, Inc. | Wear leveling in solid-state device |
US8266481B2 (en) * | 2009-07-29 | 2012-09-11 | Stec, Inc. | System and method of wear-leveling in flash storage |
US8305812B2 (en) * | 2009-08-26 | 2012-11-06 | Densbits Technologies Ltd. | Flash memory module and method for programming a page of flash memory cells |
US9330767B1 (en) | 2009-08-26 | 2016-05-03 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Flash memory module and method for programming a page of flash memory cells |
US8868821B2 (en) | 2009-08-26 | 2014-10-21 | Densbits Technologies Ltd. | Systems and methods for pre-equalization and code design for a flash memory |
US8995197B1 (en) | 2009-08-26 | 2015-03-31 | Densbits Technologies Ltd. | System and methods for dynamic erase and program control for flash memory device memories |
KR101678909B1 (en) * | 2009-09-17 | 2016-11-23 | 삼성전자주식회사 | Flash memory system and erase refresh methods for the same |
US8730729B2 (en) | 2009-10-15 | 2014-05-20 | Densbits Technologies Ltd. | Systems and methods for averaging error rates in non-volatile devices and storage systems |
US8724387B2 (en) | 2009-10-22 | 2014-05-13 | Densbits Technologies Ltd. | Method, system, and computer readable medium for reading and programming flash memory cells using multiple bias voltages |
US8626988B2 (en) * | 2009-11-19 | 2014-01-07 | Densbits Technologies Ltd. | System and method for uncoded bit error rate equalization via interleaving |
US9037777B2 (en) * | 2009-12-22 | 2015-05-19 | Densbits Technologies Ltd. | Device, system, and method for reducing program/read disturb in flash arrays |
KR101090394B1 (en) * | 2009-12-24 | 2011-12-07 | 주식회사 하이닉스반도체 | Solid State Storage System For Controlling of Reserved Area Flexibly and Method of Controlling the Same |
US8607124B2 (en) * | 2009-12-24 | 2013-12-10 | Densbits Technologies Ltd. | System and method for setting a flash memory cell read threshold |
CN102122267A (en) * | 2010-01-07 | 2011-07-13 | 上海华虹集成电路有限责任公司 | Multi-channel NANDflash controller capable of simultaneously carrying out data transmission and FTL (Flash Transition Layer) management |
US8700970B2 (en) * | 2010-02-28 | 2014-04-15 | Densbits Technologies Ltd. | System and method for multi-dimensional decoding |
US8527840B2 (en) | 2010-04-06 | 2013-09-03 | Densbits Technologies Ltd. | System and method for restoring damaged data programmed on a flash device |
US8516274B2 (en) | 2010-04-06 | 2013-08-20 | Densbits Technologies Ltd. | Method, system and medium for analog encryption in a flash memory |
US8745317B2 (en) | 2010-04-07 | 2014-06-03 | Densbits Technologies Ltd. | System and method for storing information in a multi-level cell memory |
US9021177B2 (en) | 2010-04-29 | 2015-04-28 | Densbits Technologies Ltd. | System and method for allocating and using spare blocks in a flash memory |
US8621321B2 (en) | 2010-07-01 | 2013-12-31 | Densbits Technologies Ltd. | System and method for multi-dimensional encoding and decoding |
US8539311B2 (en) | 2010-07-01 | 2013-09-17 | Densbits Technologies Ltd. | System and method for data recovery in multi-level cell memories |
US20120008414A1 (en) | 2010-07-06 | 2012-01-12 | Michael Katz | Systems and methods for storing, retrieving, and adjusting read thresholds in flash memory storage system |
US8964464B2 (en) | 2010-08-24 | 2015-02-24 | Densbits Technologies Ltd. | System and method for accelerated sampling |
KR101201582B1 (en) * | 2010-09-06 | 2012-11-14 | 에스케이하이닉스 주식회사 | Semiconductor memory device and method of operating the same |
US8508995B2 (en) | 2010-09-15 | 2013-08-13 | Densbits Technologies Ltd. | System and method for adjusting read voltage thresholds in memories |
US9063878B2 (en) | 2010-11-03 | 2015-06-23 | Densbits Technologies Ltd. | Method, system and computer readable medium for copy back |
US8850100B2 (en) | 2010-12-07 | 2014-09-30 | Densbits Technologies Ltd. | Interleaving codeword portions between multiple planes and/or dies of a flash memory device |
US10079068B2 (en) | 2011-02-23 | 2018-09-18 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Devices and method for wear estimation based memory management |
US8693258B2 (en) | 2011-03-17 | 2014-04-08 | Densbits Technologies Ltd. | Obtaining soft information using a hard interface |
US8990665B1 (en) | 2011-04-06 | 2015-03-24 | Densbits Technologies Ltd. | System, method and computer program product for joint search of a read threshold and soft decoding |
US9501392B1 (en) | 2011-05-12 | 2016-11-22 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Management of a non-volatile memory module |
US9396106B2 (en) | 2011-05-12 | 2016-07-19 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Advanced management of a non-volatile memory |
US9372792B1 (en) | 2011-05-12 | 2016-06-21 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Advanced management of a non-volatile memory |
US9195592B1 (en) | 2011-05-12 | 2015-11-24 | Densbits Technologies Ltd. | Advanced management of a non-volatile memory |
US8996790B1 (en) | 2011-05-12 | 2015-03-31 | Densbits Technologies Ltd. | System and method for flash memory management |
US9110785B1 (en) | 2011-05-12 | 2015-08-18 | Densbits Technologies Ltd. | Ordered merge of data sectors that belong to memory space portions |
US8667211B2 (en) | 2011-06-01 | 2014-03-04 | Densbits Technologies Ltd. | System and method for managing a non-volatile memory |
US8588003B1 (en) | 2011-08-01 | 2013-11-19 | Densbits Technologies Ltd. | System, method and computer program product for programming and for recovering from a power failure |
US9176800B2 (en) * | 2011-08-31 | 2015-11-03 | Micron Technology, Inc. | Memory refresh methods and apparatuses |
US8553468B2 (en) | 2011-09-21 | 2013-10-08 | Densbits Technologies Ltd. | System and method for managing erase operations in a non-volatile memory |
JP5786702B2 (en) * | 2011-12-16 | 2015-09-30 | 大日本印刷株式会社 | Security token, instruction execution method in security token, and computer program |
US8996788B2 (en) | 2012-02-09 | 2015-03-31 | Densbits Technologies Ltd. | Configurable flash interface |
US8947941B2 (en) | 2012-02-09 | 2015-02-03 | Densbits Technologies Ltd. | State responsive operations relating to flash memory cells |
US8996793B1 (en) | 2012-04-24 | 2015-03-31 | Densbits Technologies Ltd. | System, method and computer readable medium for generating soft information |
US8838937B1 (en) | 2012-05-23 | 2014-09-16 | Densbits Technologies Ltd. | Methods, systems and computer readable medium for writing and reading data |
US8879325B1 (en) | 2012-05-30 | 2014-11-04 | Densbits Technologies Ltd. | System, method and computer program product for processing read threshold information and for reading a flash memory module |
US9921954B1 (en) | 2012-08-27 | 2018-03-20 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Method and system for split flash memory management between host and storage controller |
US9368225B1 (en) | 2012-11-21 | 2016-06-14 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Determining read thresholds based upon read error direction statistics |
US9069659B1 (en) | 2013-01-03 | 2015-06-30 | Densbits Technologies Ltd. | Read threshold determination using reference read threshold |
US9136876B1 (en) | 2013-06-13 | 2015-09-15 | Densbits Technologies Ltd. | Size limited multi-dimensional decoding |
US9413491B1 (en) | 2013-10-08 | 2016-08-09 | Avago Technologies General Ip (Singapore) Pte. Ltd. | System and method for multiple dimension decoding and encoding a message |
US9348694B1 (en) | 2013-10-09 | 2016-05-24 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Detecting and managing bad columns |
US9786388B1 (en) | 2013-10-09 | 2017-10-10 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Detecting and managing bad columns |
US9397706B1 (en) | 2013-10-09 | 2016-07-19 | Avago Technologies General Ip (Singapore) Pte. Ltd. | System and method for irregular multiple dimension decoding and encoding |
US9536612B1 (en) | 2014-01-23 | 2017-01-03 | Avago Technologies General Ip (Singapore) Pte. Ltd | Digital signaling processing for three dimensional flash memory arrays |
US10120792B1 (en) | 2014-01-29 | 2018-11-06 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Programming an embedded flash storage device |
KR20150104858A (en) | 2014-03-06 | 2015-09-16 | 에스케이하이닉스 주식회사 | Semiconductor device and operating method thereof |
US9542262B1 (en) | 2014-05-29 | 2017-01-10 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Error correction |
US9892033B1 (en) | 2014-06-24 | 2018-02-13 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Management of memory units |
US9584159B1 (en) | 2014-07-03 | 2017-02-28 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Interleaved encoding |
US9972393B1 (en) | 2014-07-03 | 2018-05-15 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Accelerating programming of a flash memory module |
US9449702B1 (en) | 2014-07-08 | 2016-09-20 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Power management |
US10891185B2 (en) * | 2014-08-08 | 2021-01-12 | Hewlett Packard Enterprise Development Lp | Error counters on a memory device |
US9524211B1 (en) | 2014-11-18 | 2016-12-20 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Codeword management |
US10014060B2 (en) * | 2015-01-30 | 2018-07-03 | Sandisk Technologies Llc | Memory system and method for reducing read disturb errors |
US10305515B1 (en) | 2015-02-02 | 2019-05-28 | Avago Technologies International Sales Pte. Limited | System and method for encoding using multiple linear feedback shift registers |
US10289480B2 (en) * | 2015-03-12 | 2019-05-14 | Toshiba Memory Corporation | Memory system |
CN106155585B (en) * | 2015-05-13 | 2020-05-15 | 爱思开海力士有限公司 | Adaptive read disturb reclaim strategy |
US10628255B1 (en) | 2015-06-11 | 2020-04-21 | Avago Technologies International Sales Pte. Limited | Multi-dimensional decoding |
US9851921B1 (en) | 2015-07-05 | 2017-12-26 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Flash memory chip processing |
US9954558B1 (en) | 2016-03-03 | 2018-04-24 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Fast decoding of data stored in a flash memory |
KR20180001711A (en) | 2016-06-27 | 2018-01-05 | 삼성전자주식회사 | Storage device |
US10146604B2 (en) * | 2016-08-23 | 2018-12-04 | Oracle International Corporation | Bad block detection and predictive analytics in NAND flash storage devices |
FR3055714B1 (en) * | 2016-09-08 | 2018-09-28 | Continental Automotive France | ERROR CORRECTION METHOD IN A FLASH MEMORY |
KR102623234B1 (en) * | 2018-08-14 | 2024-01-11 | 삼성전자주식회사 | Storage device and operation method thereof |
JP2020047353A (en) * | 2018-09-20 | 2020-03-26 | キオクシア株式会社 | Memory system |
KR20200079851A (en) * | 2018-12-26 | 2020-07-06 | 에스케이하이닉스 주식회사 | Memory system and operating method thereof |
CN110262522B (en) * | 2019-07-29 | 2023-03-24 | 北京百度网讯科技有限公司 | Method and apparatus for controlling an autonomous vehicle |
US10950317B2 (en) | 2019-08-02 | 2021-03-16 | Micron Technology, Inc. | Read disturb scan consolidation |
US11287998B2 (en) | 2019-08-02 | 2022-03-29 | Micron Technology, Inc. | Read count scaling factor for data integrity scan |
US10877700B1 (en) * | 2019-08-16 | 2020-12-29 | Silicon Motion, Inc. | Flash memory controller and method capable of efficiently reporting debug information to host device |
Citations (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4879690A (en) * | 1987-09-07 | 1989-11-07 | Mitsubishi Denki Kabushiki Kaisha | Static random access memory with reduced soft error rate |
US5404485A (en) * | 1993-03-08 | 1995-04-04 | M-Systems Flash Disk Pioneers Ltd. | Flash file system |
US5905854A (en) * | 1994-12-23 | 1999-05-18 | Emc Corporation | Fault tolerant memory system |
US5937425A (en) * | 1997-10-16 | 1999-08-10 | M-Systems Flash Disk Pioneers Ltd. | Flash file system optimized for page-mode flash technologies |
US6119245A (en) * | 1997-08-06 | 2000-09-12 | Oki Electric Industry Co., Ltd. | Semiconductor storage device and method of controlling it |
US20030112667A1 (en) * | 2001-07-31 | 2003-06-19 | Akihiko Shimizu | Information reproducing method judging a multivalued level of a present cell by referring to judged multivalued levels of a preceding cell and an ensuing cell |
US20030206460A1 (en) * | 1999-09-17 | 2003-11-06 | Kunihiro Katayama | Storage device counting error correction |
US6715104B2 (en) * | 2000-07-25 | 2004-03-30 | International Business Machines Corporation | Memory access system |
US20040139310A1 (en) * | 2002-01-31 | 2004-07-15 | Akiyoshi Maeda | Information processing apparatus, memory management apparatus, memory management method, and information processing method |
US20040156251A1 (en) * | 2003-02-07 | 2004-08-12 | Renesas Technology Corp. | Nonvolatile memory system |
US6788575B2 (en) * | 2002-09-25 | 2004-09-07 | Renesas Technology Corp. | Nonvolatile memory |
US20040257888A1 (en) * | 2003-04-22 | 2004-12-23 | Kabushiki Kaisha Toshiba | Data storage system |
US20050204212A1 (en) * | 2004-02-27 | 2005-09-15 | Mitsuhiro Noguchi | Data memory system |
US20060050593A1 (en) * | 2004-09-03 | 2006-03-09 | Matsushita Electric Industrial Co. | Non-volatile memory device |
US20060075320A1 (en) * | 2004-09-10 | 2006-04-06 | Stmicroelectronics Sa | Method of detecting and correcting errors for a memory and corresponding integrated circuit |
US20060085670A1 (en) * | 2004-10-18 | 2006-04-20 | Carver Brian L | Method and system for reducing memory faults while running an operating system |
US20070136640A1 (en) * | 2005-12-14 | 2007-06-14 | Jarrar Anis M | Defect detection and repair in an embedded random access memory |
US7334159B1 (en) * | 2003-09-29 | 2008-02-19 | Rockwell Automation Technologies, Inc. | Self-testing RAM system and method |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3238806B2 (en) * | 1993-10-01 | 2001-12-17 | 三菱電機株式会社 | Semiconductor storage device |
JP4090570B2 (en) | 1998-06-02 | 2008-05-28 | 株式会社ルネサステクノロジ | Semiconductor device, data processing system, and nonvolatile memory cell threshold value changing method |
JP2000137584A (en) * | 1998-10-30 | 2000-05-16 | Nec Software Ltd | Controller for external storage device, method for substituting defective block and storage medium storing defective block substitution control program |
JP2000251483A (en) | 1999-02-24 | 2000-09-14 | Sanyo Electric Co Ltd | One chip microcomputer and data refreshing method |
JP2002150783A (en) | 2000-11-10 | 2002-05-24 | Toshiba Corp | Semiconductor memory and method for discriminating change of threshold value of memory cell transistor |
JP4236485B2 (en) * | 2003-03-06 | 2009-03-11 | Tdk株式会社 | MEMORY CONTROLLER, FLASH MEMORY SYSTEM PROVIDED WITH MEMORY CONTROLLER, AND FLASH MEMORY CONTROL METHOD |
KR100645058B1 (en) * | 2004-11-03 | 2006-11-10 | 삼성전자주식회사 | Memory managing technique capable of improving data reliability |
US7272043B2 (en) * | 2004-12-27 | 2007-09-18 | Macronix International Co., Ltd. | Operation methods for a non-volatile memory cell in an array |
-
2006
- 2006-09-06 KR KR1020060085865A patent/KR100802059B1/en not_active IP Right Cessation
-
2007
- 2007-02-27 US US11/710,991 patent/US7826263B2/en not_active Expired - Fee Related
- 2007-09-06 CN CN2007101999126A patent/CN101183563B/en active Active
- 2007-09-06 JP JP2007231833A patent/JP5138319B2/en active Active
-
2010
- 2010-10-05 US US12/897,869 patent/US20110026326A1/en not_active Abandoned
Patent Citations (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4879690A (en) * | 1987-09-07 | 1989-11-07 | Mitsubishi Denki Kabushiki Kaisha | Static random access memory with reduced soft error rate |
US5404485A (en) * | 1993-03-08 | 1995-04-04 | M-Systems Flash Disk Pioneers Ltd. | Flash file system |
US5905854A (en) * | 1994-12-23 | 1999-05-18 | Emc Corporation | Fault tolerant memory system |
US6119245A (en) * | 1997-08-06 | 2000-09-12 | Oki Electric Industry Co., Ltd. | Semiconductor storage device and method of controlling it |
US5937425A (en) * | 1997-10-16 | 1999-08-10 | M-Systems Flash Disk Pioneers Ltd. | Flash file system optimized for page-mode flash technologies |
US20030206460A1 (en) * | 1999-09-17 | 2003-11-06 | Kunihiro Katayama | Storage device counting error correction |
US6715104B2 (en) * | 2000-07-25 | 2004-03-30 | International Business Machines Corporation | Memory access system |
US20030112667A1 (en) * | 2001-07-31 | 2003-06-19 | Akihiko Shimizu | Information reproducing method judging a multivalued level of a present cell by referring to judged multivalued levels of a preceding cell and an ensuing cell |
US20040139310A1 (en) * | 2002-01-31 | 2004-07-15 | Akiyoshi Maeda | Information processing apparatus, memory management apparatus, memory management method, and information processing method |
US7418436B2 (en) * | 2002-01-31 | 2008-08-26 | Matsushita Electric Industrial Co., Ltd. | Information processing apparatus, memory management apparatus, memory management method, and information processing method |
US6788575B2 (en) * | 2002-09-25 | 2004-09-07 | Renesas Technology Corp. | Nonvolatile memory |
US20070038901A1 (en) * | 2003-02-07 | 2007-02-15 | Shigemasa Shiota | Nonvolatile memory system |
US20040156251A1 (en) * | 2003-02-07 | 2004-08-12 | Renesas Technology Corp. | Nonvolatile memory system |
US20090037767A1 (en) * | 2003-02-07 | 2009-02-05 | Renesas Technology Corp. | Nonvolatile memory system |
US20040257888A1 (en) * | 2003-04-22 | 2004-12-23 | Kabushiki Kaisha Toshiba | Data storage system |
US7334159B1 (en) * | 2003-09-29 | 2008-02-19 | Rockwell Automation Technologies, Inc. | Self-testing RAM system and method |
US20050204212A1 (en) * | 2004-02-27 | 2005-09-15 | Mitsuhiro Noguchi | Data memory system |
US20060050593A1 (en) * | 2004-09-03 | 2006-03-09 | Matsushita Electric Industrial Co. | Non-volatile memory device |
US20060075320A1 (en) * | 2004-09-10 | 2006-04-06 | Stmicroelectronics Sa | Method of detecting and correcting errors for a memory and corresponding integrated circuit |
US20060085670A1 (en) * | 2004-10-18 | 2006-04-20 | Carver Brian L | Method and system for reducing memory faults while running an operating system |
US20070136640A1 (en) * | 2005-12-14 | 2007-06-14 | Jarrar Anis M | Defect detection and repair in an embedded random access memory |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090164871A1 (en) * | 2007-12-20 | 2009-06-25 | Samsung Electronics Co., Ltd. | Semiconductor Memory Devices that are Configured to Analyze Read Failures and Related Methods of Operating Such Devices |
US8839071B2 (en) | 2007-12-20 | 2014-09-16 | Samsung Electronics Co., Ltd. | Semiconductor memory devices that are configured to analyze read failures and related methods of operating such devices |
US20100223532A1 (en) * | 2009-03-02 | 2010-09-02 | Samsung Electronics Co., Ltd. | Systems, devices and methods using redundant error correction code bit storage |
US8589767B2 (en) * | 2009-03-02 | 2013-11-19 | Samsung Electronics Co., Ltd. | Systems, devices and methods using redundant error correction code bit storage |
US20150248322A1 (en) * | 2014-02-28 | 2015-09-03 | Kabushiki Kaisha Toshiba | Memory controller and memory system |
CN110442298A (en) * | 2018-05-02 | 2019-11-12 | 杭州海康威视系统技术有限公司 | Store unit exception detection method and device, distributed memory system |
Also Published As
Publication number | Publication date |
---|---|
CN101183563B (en) | 2012-10-10 |
JP2008065830A (en) | 2008-03-21 |
US7826263B2 (en) | 2010-11-02 |
US20080055989A1 (en) | 2008-03-06 |
KR100802059B1 (en) | 2008-02-12 |
JP5138319B2 (en) | 2013-02-06 |
CN101183563A (en) | 2008-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7826263B2 (en) | Memory system including flash memory and method of operating the same | |
US8316278B2 (en) | Memory system that detects bit errors due to read disturbance and methods thereof | |
US8125825B2 (en) | Memory system protected from errors due to read disturbance and reading method thereof | |
US7813187B2 (en) | Multi-bit flash memory device and program method thereof | |
US7697359B2 (en) | Flash memory device and refresh method thereof | |
US8069382B2 (en) | Memory cell programming | |
KR101736792B1 (en) | Flash memory and self interleaving method thereof | |
US7791938B2 (en) | MSB-based error correction for flash memory system | |
US9471418B2 (en) | Memory system that detects bit errors due to read disturbance and methods thereof | |
KR101491829B1 (en) | Memory apparatus protected from read disturbance and method thereof | |
US20040237010A1 (en) | Soft errors handling in EEPROM devices | |
US8607120B2 (en) | Semiconductor memory device for performing additional ECC correction according to cell pattern and electronic system including the same | |
US20100020611A1 (en) | Flash memory systems and operating methods using adaptive read voltage levels | |
JP6115740B1 (en) | Semiconductor memory device | |
US10084487B2 (en) | Apparatuses and methods for erasure-assisted ECC decoding | |
US11960722B2 (en) | Memory device programming technique for increased bits per cell | |
US20240028200A1 (en) | Memory device programming technique for increased bits per cell | |
JP6293846B2 (en) | Semiconductor memory device | |
CN113764027A (en) | Memory system, memory controller, and method of operating memory system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |