Flash memory apparatus and storage management method for flash memory
First Claim
1. A flash memory apparatus, comprising:
- a flash memory module comprising a plurality of single-level-cell blocks and at least one multiple-level-cell block; and
a flash memory controller having a plurality of channels respectively connected to the flash memory module, the flash memory controller being configured for classifying data to be programmed into a plurality of groups of data, respectively executing single-level-cell programming and RAID-like (Redundant Array of Independent Disks-like) RS (Reed-Solomon) error code encoding to generate a corresponding parity check code to program the groups of data and the corresponding parity check code to the plurality of single-level-cell blocks;
wherein when completing program of the plurality of single-level-cell blocks, controlling the flash memory module to perform an internal copy operation to program the at least one multiple-level-cell block of the flash memory module according to the plurality of single-level-cell blocks of the flash memory module.
1 Assignment
0 Petitions
Accused Products
Abstract
A flash memory storage management method includes: providing a flash memory module including single-level-cell (SLC) blocks and at least one multiple-level-cell block such as MLC block, TLC block, or QLC block; classifying data to be programmed into groups of data; respectively executing SLC programming and RAID-like error code encoding to generate corresponding parity check codes, to program the groups of data and corresponding parity check codes to the SLC blocks; when completing program of the SLC blocks, performing an internal copy to program the at least one multiple-level-cell block by sequentially reading and writing the groups of data and corresponding parity check codes from the SLC blocks to the multiple-level-cell block according to a storage order of the SLC blocks.
-
Citations
19 Claims
-
1. A flash memory apparatus, comprising:
-
a flash memory module comprising a plurality of single-level-cell blocks and at least one multiple-level-cell block; and a flash memory controller having a plurality of channels respectively connected to the flash memory module, the flash memory controller being configured for classifying data to be programmed into a plurality of groups of data, respectively executing single-level-cell programming and RAID-like (Redundant Array of Independent Disks-like) RS (Reed-Solomon) error code encoding to generate a corresponding parity check code to program the groups of data and the corresponding parity check code to the plurality of single-level-cell blocks; wherein when completing program of the plurality of single-level-cell blocks, controlling the flash memory module to perform an internal copy operation to program the at least one multiple-level-cell block of the flash memory module according to the plurality of single-level-cell blocks of the flash memory module. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 17)
-
-
9. A flash memory storage management method, comprising:
-
providing a flash memory module comprising a plurality of single-level-cell blocks and at least one multiple-level-cell block; classifying data to be programmed into a plurality of groups of data; respectively executing single-level-cell programming and RAID-like (Redundant Array of Independent Disks-like) RS (Reed-Solomon) error code encoding to generate a corresponding parity check code to program the groups of data and the corresponding parity check code to the plurality of single-level-cell blocks; and when completing program of the plurality of single-level-cell blocks, controlling the flash memory module to perform an internal copy operation to program the at least one multiple-level-cell block of the flash memory module according to the plurality of single-level-cell blocks of the flash memory module. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 18)
-
-
19. A flash memory controller coupled to a flash memory module comprising a plurality of single-level-cell blocks and at least one multiple-level-cell block, and the flash memory controller comprises:
-
a plurality of channels respectively connected to the flash memory module; and the flash memory controller is configured for; classifying data to be programmed into a plurality of groups of data, respectively executing single-level-cell programming and RAID-like (Redundant Array of Independent Disks-like) RS (Reed-Solomon) error code encoding to generate a corresponding parity check code to program the groups of data and the corresponding parity check code to the plurality of single-level-cell blocks; and when completing program of the plurality of single-level-cell blocks, controlling the flash memory module to perform an internal copy operation to program the at least one multiple-level-cell block of the flash memory module according to the plurality of single-level-cell blocks of the flash memory module.
-
Specification