Apparatus and method for multi-mode operation of a flash memory device
First Claim
1. A method for operating a multi-level cell (MLC) flash memory circuit, the method comprising the steps of:
- reading data from a memory block of a plurality of memory blocks in the MLC flash memory circuit,wherein each of the plurality of memory blocks can operate in one of at least three modes of operation comprising an MLC mode, a single-level cell (SLC) mode and a defective mode,wherein the memory block is initially operating in the MLC mode, andwherein the MLC flash memory circuit stores an MLC table for tracking memory blocks in the MLC mode, an SLC table for tracking memory blocks in the SLC mode and a defective blocks table for tracking memory blocks in the defective mode;
performing error correction on the read data to correct read errors in the read data;
determining if a number of bits corrected by the error correction exceeds a predetermined threshold value;
if the number of bits corrected by the error correction exceeds the predetermined threshold value, switching the operating mode of the memory block from the MLC mode to the SLC mode; and
updating at least one of the MLC table, the SLC table or the defective blocks table based on the switching of the operating mode.
9 Assignments
0 Petitions
Accused Products
Abstract
Disclosed is an apparatus and method for operating a multi-level cell (MLC) flash memory circuit. Data is read from a memory block of a plurality of memory blocks in the MLC flash memory circuit, wherein each of the plurality of memory blocks can operate in one of at least three modes of operation comprising an MLC mode, a single-level cell (SLC) mode and a defective mode, and wherein the memory block is initially operating in the MLC mode. Error correction is performed on the read data to correct read errors in the read data. A determination is made if a number of bits corrected by the error correction exceeds a predetermined threshold value. If the number of bits corrected by the error correction exceeds the predetermined threshold value, the operating mode of the memory block is switched from the MLC mode to the SLC mode.
-
Citations
20 Claims
-
1. A method for operating a multi-level cell (MLC) flash memory circuit, the method comprising the steps of:
-
reading data from a memory block of a plurality of memory blocks in the MLC flash memory circuit, wherein each of the plurality of memory blocks can operate in one of at least three modes of operation comprising an MLC mode, a single-level cell (SLC) mode and a defective mode, wherein the memory block is initially operating in the MLC mode, and wherein the MLC flash memory circuit stores an MLC table for tracking memory blocks in the MLC mode, an SLC table for tracking memory blocks in the SLC mode and a defective blocks table for tracking memory blocks in the defective mode; performing error correction on the read data to correct read errors in the read data; determining if a number of bits corrected by the error correction exceeds a predetermined threshold value; if the number of bits corrected by the error correction exceeds the predetermined threshold value, switching the operating mode of the memory block from the MLC mode to the SLC mode; and updating at least one of the MLC table, the SLC table or the defective blocks table based on the switching of the operating mode. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system for adjusting a memory parameter associated with a multi-level cell (MLC) flash memory circuit, comprising:
-
a host interface configured to be operably coupled to a host device, to receive data from the host device, and to send data to the host device; a memory interface operably coupled to the MLC flash memory circuit; a storage medium interface operably coupled to a volatile memory; and a controller operably coupled to the host interface, wherein the controller is operable to; read data from a memory block of a plurality of memory blocks in the MLC flash memory circuit, wherein each of the plurality of memory blocks can operate in one of at least three modes of operation comprising an MLC mode, a single-level cell (SLC) mode and a defective mode, wherein the memory block is initially operating in the MLC mode, and wherein the MLC flash memory circuit stores an MLC table for tracking memory blocks in the MLC mode, an SLC table for tracking memory blocks in the SLC mode and a defective blocks table for tracking memory blocks in the defective mode; perform error correction on the read data to correct read errors in the read data; determine if a number of bits corrected by the error correction exceeds a predetermined threshold value; if the number of bits corrected by the error correction exceeds the predetermined threshold value, switch the operating mode of the memory block from the MLC mode to the SLC mode; and update at least one of the MLC table, the SLC table or the defective blocks table based on the switching of the operating mode. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory machine-readable medium including machine-executable instructions for performing a method for operating a multi-level cell (MLC) flash memory circuit, the method comprising the steps of:
-
reading data from a memory block of a plurality of memory blocks in the MLC flash memory circuit, wherein each of the plurality of memory blocks can operate in one of at least three modes of operation comprising an MLC mode, a single-level cell (SLC) mode and a defective mode, wherein the memory block is initially operating in the MLC mode; and wherein the MLC flash memory circuit stores an MLC table for tracking memory blocks in the MLC mode, an SLC table for tracking memory blocks in the SLC mode and a defective blocks table for tracking memory blocks in the defective mode; performing error correction on the read data to correct read errors in the read data; determining if a number of bits corrected by the error correction exceeds a predetermined threshold value; if the number of bits corrected by the error correction exceeds the predetermined threshold value, switching the operating mode of the memory block from the MLC mode to the SLC mode; and updating at least one of the MLC table, the SLC table or the defective blocks table based on the switching of the operating mode. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification