Flash Memory Controller Majority Vote ECC Error Reduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing Flash memory devices, particularly Multiple Level Cell (MLC) Flash memories, face challenges in balancing operation performance and system resource management due to unstable characteristics, leading to uncorrectable errors that current solutions fail to adequately address.
Innovation Solution
A method involving a controller that performs majority vote on data read at different times at the same address, temporarily storing data in buffering regions to generate and verify majority vote data, which replaces the latest retrieved data, thereby reducing uncorrectable errors and optimizing ECC performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If MLC Flash memories are used to increase storage density, then storage capacity is improved, but error stability deteriorates due to unstable characteristics
Solution Approach 1:
The system performs preliminary reading of data multiple times at different times before final output. By reading data at multiple time points (first reading, second reading, third reading) and comparing results, the system proactively identifies and corrects errors before they affect data integrity, thereby maintaining reliability while using MLC Flash memories for high storage density
Solution Approach 2:
The system implements feedback by comparing data read at different times and using this comparison to determine whether to output the data. The controller reads data multiple times, compares the readings, and only outputs data that passes the comparison test, creating a feedback loop that ensures data stability while maintaining high storage capacity
2Reliability
If data is read multiple times at the same address to improve error correction, then reliability is improved, but time consumption increases
Solution Approach 1:
The system performs partial reading actions by reading data only at specific time points (first, second, and third readings) rather than continuously or excessively. This partial action approach provides sufficient error correction capability through strategic sampling while avoiding unnecessary time consumption that would result from more frequent or prolonged reading operations
3Reliability
If majority vote is performed on multiple data readings to correct errors, then uncorrectable errors are reduced, but device complexity increases
Solution Approach 1:
The controller performs self-service by automatically comparing data from multiple readings and determining whether to output the data without external intervention. The majority vote mechanism is implemented within the controller itself, allowing it to self-correct errors and manage its own reliability without requiring additional complex external systems or manual error correction processes
Data Source
AI summary
A method for reducing uncorrectable errors of a memory device regarding Error Correction Code (ECC) includes: performing majority vote according to data read at different times at a same address in order to generate majority vote data corresponding to the address; and checking whether the majority vote data has any uncorrectable error in order to determine whether to output the majority vote data as data of the address. For example, the method further includes: within the data read at different times at the same address, temporarily storing all of the data except for data of a last time into buffering regions/buffers, respectively, with the majority vote data being temporarily stored into a second buffering region/buffer to utilize a latest generated portion within the majority vote data to replace a latest retrieved portion within data in the second buffering region/buffer. An associated memory device and the controller thereof are further provided.


