Multi-state flash memory defect management
First Claim
1. A processing system comprisinga plurality of flash memory devices each having an array of memory cells arranged in rows and columns, each row of the array including overhead memory cells to store overhead data;
- a processor to control read and write operations for the plurality of flash memory devices;
a defect table register to store a defect table including addresses of defective memory cells in the plurality of flash memory devices;
a compare circuit to compare the defect table and an address of a memory location of one of the plurality of flash memory devices to determine if the memory location is defective;
at least one shift register to serially hold input data intended to be written to defective memory locations; and
memory interface logic to store contents of the at least one shift register in the overhead memory cells.
6 Assignments
0 Petitions
Accused Products
Abstract
A system is described which stores data intended for defective memory cells in a row of a memory array in an overhead location of the memory row. The data is stored in the overhead packet during a write operation, and is read from the overhead packet during a read operation. A defect location table for the row of the memory array is provided to identify when a defective memory cell is address;ed for either a read or write access operation. During a write operation, the correct data is stripped from incoming data for storing into the overhead packet. During a read operation, the correct data is inserted into an output data stream from the overhead packet. Data written to defective cells can be either a custom setting, a default setting, or the original data. Shift registers are described for holding good data during either a read or write operation. The number of shift registers used is determined by the number of states stored in a memory cell. The shift registers use a marker for alignment ofdata bits in a data stream.
-
Citations
51 Claims
-
1. A processing system comprising
a plurality of flash memory devices each having an array of memory cells arranged in rows and columns, each row of the array including overhead memory cells to store overhead data; -
a processor to control read and write operations for the plurality of flash memory devices; a defect table register to store a defect table including addresses of defective memory cells in the plurality of flash memory devices; a compare circuit to compare the defect table and an address of a memory location of one of the plurality of flash memory devices to determine if the memory location is defective; at least one shift register to serially hold input data intended to be written to defective memory locations; and memory interface logic to store contents of the at least one shift register in the overhead memory cells. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A method of storing data in a flash memory device comprising an array of memory cells arranged in rows and columns, each row of the array having a data portion for storing data, and an overhead portion, the method comprising:
-
identifying defective memory cells located in the data portion of a row; receiving a stream of data bits to be stored in the array of memory cells; selectively removing data bits from the data stream which are intended to be written to the defective memory cells; and serially storing the removed data bit in the overhead portion of the row. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23)
-
-
24. A method of storing and retrieving data in a memory device, the method comprising:
-
receiving an input serial stream of data bits, and storing the input serial stream of data bits in a data location of the memory device wherein at least two of the data bits are stored in one memory cell; selectively copying data bits from the input serial stream of data bits and storing the copied data bits in an overhead location of the memory device; reading an output serial stream of data bits stored in the data location of the memory device; reading the copied data bits from the overhead location of the memory device; and selectively replacing data bits in the output serial stream of data bits to recreate the received input serial stream of data bits. - View Dependent Claims (25, 26, 27, 28, 29, 30, 31)
-
-
32. A method of storing data in a memory device, the method comprising:
-
selecting a current access target location in the memory device; comparing a table of known defective memory cell locations in the memory device to the current access target location in the memory device; extracting data bits from a plurality of data bits to be stored in the current access target location in the memory device; substituting alternate data bits for the extracted data bits; storing the plurality of data bits including the alternate data bits in the current access target location; and storing the extracted data bits in the memory device in a second location. - View Dependent Claims (33, 34, 35, 36)
-
-
37. A method of defect management in a memory device having a row of memory cells arranged in n-data packets including at least one overhead data packet, the method comprising:
-
identifying memory cells located in the n-data packets which are defective; and rerouting data intended to be stored in the defective memory cells to be stored in the at least one overhead data packet. - View Dependent Claims (38, 39, 40, 41)
-
-
42. A data management system comprising:
-
a controller to access memory locations in memory devices in response to externally provided commands; a defect table register to store a defect table having a plurality of memory addresses of defective memory locations; a comparator to compare addresses stored in the defect table to currently accessed memory addresses; a plurality of shift registers to store data directed to the defective memory locations; and substitution circuitry to selectively substitute data in place of the data stored in the shift registers. - View Dependent Claims (43, 44, 45, 46, 47, 48)
-
-
49. A processing system comprising:
-
a plurality of n-state flash memory devices each having an array of memory cells arranged in rows and columns, each row of each array including memory cells dedicated to storing overhead data; a processor to control read and write operations for the plurality of n-state flash memory devices; a defect table register to store a defect table containing addresses of defective memory cells in the plurality of n-state flash memory devices and to store replacement data; a compare circuit to compare the addresses of the defect table and an address of a memory location of one of the plurality of n-state flash memory devices to determine if the memory location is defective; n-shift registers to serially hold input data intended to be written to defective memory locations; substitution circuitry to substitute the replacement data from the defect table in place of the input data intended to be written to defective memory locations prior to writing the input data to one of the n-state flash memory devices; and memory interface logic to store contents of the n-shift registers in the memory cells dedicated to storing overhead data.
-
-
50. A processing system comprising:
-
a flash memory device having an array of memory cells arranged in rows and columns, each row in the array including memory cells to store input data and overhead memory cells to store overhead data; a processor to control read and write operations for the flash memory device; and a remapping circuit coupled between the flash memory device and the processor to transfer data to and from the flash memory device, the remapping circuit comprising; a register containing a defect table with addresses of defective memory cells in the flash memory device; a compare circuit to compare the addresses in the defect table and an address of a selected memory cell in the flash memory device to determine if the selected memory cell is defective; at least one shift register to hold input data intended to be written to the defective memory cells in the flash memory device; and interface logic to write contents of the shift register to the overhead memory cells. - View Dependent Claims (51)
-
Specification