Flash Memory Partitioning With Adaptive ECC for Random Data
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing non-volatile memory systems, particularly MLC flash memory, face a challenge in balancing error correction code reliability with performance, as long code words provide better error correction but incur unacceptable latencies, especially for small data chunks, and different pages exhibit varying error rates.
Innovation Solution
A method and system that partition the long-term memory into regions with different levels of ECC protection, directing data to appropriate partitions based on data type, using a controller to determine the data type and apply either a non-interleaved or interleaved ECC scheme, optimizing for random or sequential access.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If long code words are used for error correction, then reliability and error correction capability are improved, but transfer and decoding times increase causing unacceptable latencies
Solution Approach 1:
The patent divides the long-term memory into multiple partitions, each with different ECC protection levels. Frequently accessed data is stored in partitions with lower ECC protection (faster access), while less frequently accessed data is stored in partitions with higher ECC protection (better reliability). This segmentation resolves the contradiction by providing different ECC strengths for different data access patterns.
Solution Approach 2:
The patent implements dynamic data migration between partitions based on access patterns. Data that was initially stored in high-protection partitions may be migrated to low-protection partitions when accessed frequently, and vice versa. This dynamic adjustment optimizes the balance between reliability and access speed over time.
2Quantity of substance
If high density MLC flash memory is used to increase capacity, then storage capacity is improved, but error rates increase requiring stronger ECC protection
Solution Approach 1:
The patent applies different ECC protection levels to different partitions of the MLC flash memory based on local access patterns and data importance. Critical data receives stronger ECC protection while less critical data receives weaker protection, optimizing the overall system reliability without unnecessarily protecting all data at the highest level.
3Quantity of substance
If different pages of a word line are used for storage, then storage capacity is improved, but different pages exhibit different reliabilities making consistent error correction difficult
Solution Approach 1:
The patent segments data across different partitions with different ECC configurations based on access patterns. By grouping pages with similar access characteristics into the same partition and applying appropriate ECC strength, the system handles page reliability variations more effectively.
Data Source
AI summary
A system and method for partitioning data in long term memory of a flash memory device is disclosed. The method may include the steps of identifying a type of data that has been received and routing the data to one of at least two partitions in the long term memory array. One partition of the flash memory device may be optimized for random data while another is optimized for sequential data. The method includes identifying the type of data and routing the data to the appropriate partition. Data may be analyzed and routed upon receipt or initially stored in a default partition and later analyzed and routed to another partition. The partition for random data may be configured for storing data using a first level of ECC protection while the second may be configured for storing data using a second, stronger level of ECC protection.


