Memory Controller ECC Encoding for Metadata Without Capacity Loss
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional memory systems face challenges in efficiently storing metadata without compromising application data storage capacity and requiring additional hardware, as metadata storage often consumes valuable space and resources.
Innovation Solution
A memory control component that encodes over-capacity data into an error correction code (ECC) and stores it with application data blocks on dual inline memory modules (DIMMs), allowing for metadata recovery during read-back operations without additional memory consumption, using Reed-Solomon encoding and decoding to expand storage capacity effectively.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If metadata is stored separately from application data, then metadata can be preserved and recovered, but application data storage capacity is reduced and additional hardware is required
Solution Approach 1:
The patent merges metadata storage with application data storage by encoding metadata into the ECC portion of memory slots. Instead of separating metadata into dedicated storage resources, the system combines both types of data within the same memory infrastructure, using the ECC field to carry metadata bits alongside application data bits, thereby eliminating the need for additional hardware while preserving metadata integrity
Solution Approach 2:
The patent makes the ECC field multi-functional by using it for both its traditional error correction purpose and as a storage medium for metadata. This universal usage of the ECC portion allows the same hardware resources to serve dual purposes: protecting application data from errors and storing metadata, thus avoiding the need for separate dedicated metadata storage hardware
2Reliability
If dedicated metadata storage hardware is added, then metadata can be stored without affecting application data capacity, but device complexity and hardware cost increase
Solution Approach 1:
The patent merges metadata storage with application data storage by encoding metadata into the ECC portion of memory slots. Instead of separating metadata into dedicated storage resources, the system combines both types of data within the same memory infrastructure, using the ECC field to carry metadata bits alongside application data bits, thereby eliminating the need for additional hardware while preserving metadata integrity
Solution Approach 2:
The patent makes the ECC field multi-functional by using it for both its traditional error correction purpose and as a storage medium for metadata. This universal usage of the ECC portion allows the same hardware resources to serve dual purposes: protecting application data from errors and storing metadata, thus avoiding the need for separate dedicated metadata storage hardware
3Reliability
If ECC is used for error correction, then data integrity is maintained, but storage capacity is reduced due to overhead
Solution Approach 1:
The patent makes the ECC field multi-functional by using it for both its traditional error correction purpose and as a storage medium for metadata. This universal usage of the ECC portion allows the same hardware resources to serve dual purposes: protecting application data from errors and storing metadata, thus avoiding the need for separate dedicated metadata storage hardware
Solution Approach 2:
The patent changes the parameters of the ECC scheme by increasing the ECC overhead allocation. Instead of using traditional ECC configurations, the system employs extended ECC with additional check bits that can accommodate metadata storage. This parameter change allows the ECC field to expand beyond its traditional error correction role and include metadata capacity, effectively converting unused ECC capacity into useful storage space
Data Source
AI summary
A memory control component encodes over-capacity data into an error correction code generated for and stored in association with an application data block, inferentially recovering the over-capacity data during application data block read-back by comparing error syndromes generated in detection/correction operations for respective combinations of each possible value of the over-capacity data and the read-back application data block.

