Memory Controller Pointer Remapping for Faulty Block Error Protection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing memory technologies fail to accurately detect and mitigate both hard and soft errors, leading to data loss and increased manufacturing costs due to the inability to recognize non-memory cell soft errors without significant memory capacity or customization.
Innovation Solution
Implementing remapping functionality in a controller to redirect data from faulty memory blocks to non-faulty ones, using error correction codes and pointer flags to manage data storage, thereby avoiding customization of the memory and maintaining low costs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If error protection techniques are implemented in memory, then reliability improves, but memory capacity and overhead increase
Solution Approach 1:
The memory block is divided into data storage regions and pointer storage regions. The pointer storage region contains metadata (pointer flags and pointers) that segment the memory management function, allowing error protection without requiring the entire memory block to be expanded for protection purposes.
Solution Approach 2:
Pointers are introduced as intermediary elements that indirectly reference data locations. Instead of directly storing protected data, the system stores pointers to data locations, with the pointers themselves being the protected elements. This intermediary layer enables error protection with minimal overhead.
2Reliability
If memory is customized for error tolerance, then reliability improves, but manufacturing cost increases
Solution Approach 1:
The memory structure uses universal pointer flags and pointers that can be applied to any memory block regardless of its specific function or data type. This multi-functional approach allows the same error protection mechanism to be used across different memory regions without requiring custom-designed error protection circuitry for each application.
Solution Approach 2:
The memory system performs self-diagnosis through pointer flags that indicate whether a memory block is faulty. The system automatically remaps data from faulty blocks using the stored pointers without requiring external intervention or specialized error correction hardware, enabling error tolerance through self-service mechanisms.
3Reliability
If remapping functionality is implemented in memory, then reliability improves, but device complexity increases
Solution Approach 1:
The remapping functionality is extracted from the memory array itself and implemented in the controller. The memory blocks only store data and simple pointer flags, while the complex remapping logic resides externally in the controller, reducing the complexity of the memory device while maintaining fault tolerance.
4Reliability
If pointer flags and pointers are stored in memory blocks, then reliability improves, but manufacturing precision requirements increase
Solution Approach 1:
Instead of protecting every single bit of data with complex error correction codes, the system applies partial protection by only storing pointer information in dedicated pointer storage regions. This selective approach provides sufficient error detection capability while avoiding the need for high-precision manufacturing across the entire memory block.
Data Source
AI summary
Embodiments herein relate to a method for remapping data. In an embodiment, it is determined if a first memory block is faulty. A pointer is stored to the first memory block and a pointer flag of the first memory block is set when the first memory block is faulty. Data previously stored at the first memory block is written to a second memory block, where the pointer points to a location of the second memory block.


