Flash Memory Page Scanning Using Dual-Decoder Erase Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Flash memory systems face challenges in identifying erased pages efficiently, particularly due to incomplete programming caused by low host writing activity or power cycles, which hinders the determination of the last programmed page in a block.
Innovation Solution
A method and system utilizing a dual-decoder configuration in a data storage system, where a first decoder decodes a codeword from a flash memory page, and a second decoder verifies the decoded data, identifying a page as erased if the first decoder successfully decodes but the second decoder fails to verify, leveraging ECC and EDC decoders to distinguish between erased and programmed states based on all-ones patterns.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If a single decoder is used to read flash memory pages, then the device complexity is reduced, but the accuracy in identifying erased pages deteriorates
Solution Approach 1:
The decoding process is segmented into two independent decoders: a first decoder that attempts to decode the codeword and a second decoder that verifies the decoded data. This segmentation allows each decoder to specialize in its function, with the first decoder handling initial decoding and the second decoder performing verification, thereby improving identification accuracy while maintaining manageable complexity through functional division
Solution Approach 2:
The first decoded data acts as an intermediary between the raw codeword and the final identification result. The first decoder produces decoded data that serves as input to the second decoder for verification, creating an intermediate verification stage that enhances accuracy without requiring a completely complex single-decoder design
2Ease of operation
If traditional reading methods are used, then the process is simpler, but the ability to identify incomplete programming deteriorates
Solution Approach 1:
The system implements feedback through the verification process where the second decoder checks the decoded data from the first decoder. This feedback mechanism provides confirmation or rejection of the decoded data, enabling reliable detection of incomplete programming while maintaining ease of operation through automated feedback-based identification
Solution Approach 2:
The first decoder performs preliminary decoding of the codeword before the verification stage. This preliminary action prepares the data for subsequent verification, allowing the system to efficiently screen pages and only perform full verification on candidates, thus maintaining simplicity while improving detection reliability
3Reliability
If scanning all pages is performed to find erased pages, then completeness of identification is improved, but the time consumption increases
Solution Approach 1:
The system performs partial scanning by using the first decoder to quickly identify candidate pages that may be erased, then applies the more time-consuming verification process only to these candidates rather than all pages. This partial action approach maintains identification completeness for erased pages while significantly reducing overall scanning time by avoiding full verification on all pages
Data Source
AI summary
The subject technology provides for scanning blocks of a flash memory device for erased pages. A first codeword read from a page of a block in a flash memory device is received and provided to a first decoder for decoding. In response to receiving a first success indicator from the first decoder indicating that the first codeword was successfully decoded, first decoded data is provided from the first decoder to a second decoder for verification of the first decoded data. In response to receiving a first failure indicator from the second decoder indicating that the first decoded data was not verified, the page of the block is identified as being in an erased state based on the first success indicator received from the first decoder and the first failure indicator received from the second decoder.


