Configurable ECC Codec Using External Parameters for Flash Memory
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional encoder/decoders for flash memory struggle to efficiently and economically support multiple error correcting codes (ECCs) due to the need for large parameter storage, which increases circuit area and reduces design flexibility.
Innovation Solution
A configurable ECC codec system that selectively performs different error corrections using error-free parameters stored in external memory devices, either through error-free storage devices or supplementary codecs, allowing for initialization without the need for extensive parameter storage within the codec itself.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If multiple ECC parameters are stored in the codec, then multiple error correcting codes can be supported, but the circuit area of the codec is enlarged
Solution Approach 1:
The patent extracts the parameter storage function from the codec and relocates it to external memory devices. The codec only retains minimal control logic, while the bulk parameters (parity check matrices, generator matrices, etc.) are stored externally, dramatically reducing the codec's circuit area while maintaining support for multiple ECC types.
Solution Approach 2:
The patent introduces a memory interface and control logic as intermediaries between the external memory and the codec. This intermediary layer manages parameter loading and selection, allowing the codec to support multiple ECC types without permanently storing all parameters internally.
2Adaptability or versatility
If multiple ECC parameters are stored in the codec, then multiple error correcting codes can be supported, but the circuit design becomes inflexible
Solution Approach 1:
The patent transforms the static parameter storage architecture into a dynamic one where parameters are loaded on-demand from external memory. The codec can adapt its configuration at runtime by loading different parameter sets, enabling flexible support for multiple ECC types without committing to a fixed internal storage structure.
Solution Approach 2:
The patent creates a universal parameter storage solution in external memory that can accommodate any ECC type. The same external memory interface and loading mechanism serve all ECC configurations, making the design flexible and easily adaptable to new ECC standards without requiring dedicated hardware for each type.
3Area of stationary object
If parameters are stored in external memory, then codec circuit area is reduced, but parameter loading and initialization complexity increases
Solution Approach 1:
The patent implements preliminary action by pre-organizing parameters in external memory with clear addressing schemes and metadata structures. The system performs automatic parameter selection and loading based on the detected memory type, eliminating the need for complex manual configuration and reducing initialization complexity despite external storage.
4Area of stationary object
If error-prone parameters are stored in external memory, then codec internal storage is reduced, but data integrity requires additional error correction mechanisms
Solution Approach 1:
The patent applies beforehand cushioning by implementing error detection and correction codes on the parameters stored in external memory. Checksum fields, parity bits, and redundant storage mechanisms are incorporated into the parameter structure to prevent corruption and ensure data integrity before parameters are loaded into the codec.
Data Source
AI summary
A configurable coding system and method of multiple error correcting codes (ECCs) for a memory device or devices are disclosed. The system includes an ECC codec that selectively performs different error corrections with different parameters. The system also includes means for providing a selected parameter to the ECC codec for initializing the ECC codec. The parameter used for initializing the ECC codec is an error-free parameter.


