Flash Memory Block Configuration for ECC Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing flash memory devices have a fixed configuration of memory cells, which can lead to inefficiencies in user data storage and error correction code (ECC) data storage, as different ECC codes require varying amounts of memory cells, resulting in unused space or insufficient ECC data for desired reliability levels, and do not allow for flexible allocation based on specific application needs.
Innovation Solution
The memory array configuration is made adaptable by allowing user data and ECC data storage areas to be dynamically allocated based on the specific requirements of the application, with the ability to configure blocks to store either user data or ECC data, and to vary the size of ECC data storage areas depending on the desired level of reliability, enabling efficient use of memory cells across the array.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If a fixed configuration of memory cells is used, then the device structure is simple and manufacturing is easier, but memory cell utilization efficiency deteriorates due to unused space or insufficient ECC data
Solution Approach 1:
The patent implements dynamic configuration of memory blocks, where each block can be programmatically assigned to store either user data or ECC data based on runtime requirements. This is achieved through configuration registers that allow the controller to dynamically adjust the allocation of memory blocks between user data storage and ECC data storage, transforming a static fixed configuration into a dynamic adaptable structure that optimizes memory cell utilization for different applications and error correction requirements
Solution Approach 2:
The patent changes the configurable parameters of memory blocks from fixed physical design to programmatically adjustable parameters. By introducing configuration registers that control the function assignment of each memory block, the system allows parameter changes in memory allocation ratios, block sizes, and distribution patterns without requiring physical redesign, thereby improving memory cell utilization efficiency while maintaining manufacturing simplicity
2Device complexity
If memory allocation is permanently configured during design, then device complexity is reduced, but adaptability to different applications deteriorates
Solution Approach 1:
The patent makes each memory block universal by enabling it to serve multiple functions - either storing user data or ECC data based on configuration settings. This multi-functionality is achieved through configuration registers that allow the same physical memory block structure to be dynamically assigned to different logical functions, providing application-specific flexibility without increasing device complexity or requiring separate dedicated structures for each function
Solution Approach 2:
The patent introduces dynamic configurability to memory block allocation through configuration registers that can be programmed at different stages (manufacturing, initialization, or runtime). This dynamic aspect allows the system to adapt to different applications and requirements without changing the physical device structure, maintaining low device complexity while achieving high adaptability through software-controlled configuration
3Reliability
If ECC data storage area is increased to ensure sufficient error correction capability, then reliability improves, but memory space for user data decreases
Solution Approach 1:
The patent implements dynamic allocation between ECC data storage and user data storage through configuration registers. The system can programmatically adjust the ratio of memory blocks assigned to ECC data versus user data based on the desired level of reliability and the available capacity requirements. This dynamic configuration allows optimization of both reliability and storage capacity without requiring a fixed trade-off ratio determined solely at manufacturing time
Solution Approach 2:
The patent introduces configurable parameters that control the allocation ratio between ECC data storage area and user data storage area. By allowing these parameters to be adjusted through configuration registers, the system can change the balance between reliability (ECC capability) and storage capacity (user data space) according to specific application needs, rather than being locked into a fixed design-time allocation
Data Source
AI summary
A memory device has a plurality of individually erasable blocks of memory cells and a controller configured to configure a first block of memory cells of the plurality of blocks of memory cells in a first configuration comprising one or more groups of overhead data memory cells, to configure a second block of memory cells of the plurality of blocks of memory cells in a second configuration comprising a group of user data memory cells and a group of overhead data memory cells, and to configure a third block of memory cells of the plurality of blocks of memory cells in a third configuration comprising only a group of user data memory cells. The group of overhead data memory cells of the second block of memory cells has a different storage capacity than at least one group of overhead data memory cells of the one or more groups of overhead data memory cells of the first block of memory cells.


