SSD Error Correction for Variable NAND Page Sizes Without LBA Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional solid-state drive (SSD) devices face inefficiencies due to the storage of logical block addresses (LBAs) in the out-of-band (OOB) region of NAND Flash memory, leading to unnecessary reads, accelerated memory degradation, and limited usable storage space, especially with the need for error correction and replication of LBA-to-physical block address (PBA) mappings.
Innovation Solution
The implementation of a syndrome calculator and an improved error-correcting code (ECC) encoder/decoder in NAND Flash devices, which calculates a syndrome based on the LBA to encode and decode pages, allowing for error correction without storing LBAs, thus increasing usable storage space and minimizing parity bits needed.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If LBA is stored in the OOB region of each sector, then the LBA-to-PBA mapping can be maintained, but the usable storage space is reduced and memory degradation accelerates due to repeated reads
Solution Approach 1:
The patent extracts the LBA storage function from the OOB region of each sector. Instead of storing LBA in every sector's OOB region, the system uses a separate mapping table stored in a designated area of the NAND Flash device. This extraction eliminates the space consumption and read operations associated with storing LBA in each sector, thereby increasing usable storage space while maintaining mapping reliability through the dedicated mapping table.
2Ease of operation
If LBA is stored in the OOB region of each sector, then the mapping information is available locally, but the number of reads increases and memory degradation accelerates
Solution Approach 1:
The patent removes LBA storage from the OOB region of each sector and consolidates it into a separate mapping table. This extraction reduces the number of read operations required to access mapping information, as the mapping table is read once rather than with every sector access. This reduction in read operations decreases memory degradation and extends the lifespan of the NAND Flash device while maintaining ease of access through the dedicated mapping structure.
3Reliability
If LBA is stored in the OOB region of each sector, then the mapping can be maintained, but error correction overhead increases due to the need for parity bits
Solution Approach 1:
The patent extracts LBA from the data storage area and places it in a separate mapping table. This separation allows the main data area to use more efficient error correction schemes with fewer parity bits, as the LBA information is handled separately in the mapping table. The mapping table itself uses appropriate error correction, but this reduces the overall error correction overhead for the primary data storage function, simplifying the device while maintaining data integrity.
Data Source
AI summary
Systems and methods for accommodating variable page sizes in solid-state drives using customized error correction are disclosed. In one embodiment, a system is disclosed comprising a NAND Flash storage device comprising a plurality of NAND Flash pages; a NAND FTL configured to convert a LBA of a NAND Flash page to a PBA; a syndrome calculator configured to calculate a syndrome using a LBA and an LBA parity matrix, the LBA associated with a read command issued by a host device; and an ECC decoder configured to: read a codeword located at a PBA associated with the LBA associated with the read command, the codeword including a plurality of user data bits and a plurality of parity bits, confirm that the codeword does not contain an error if the codeword converges with the syndrome, and transmit the user data bits to the host device as a response to the read command.


