Non-volatile Memory Controller Offloading Complex Procedures to External Processor
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional non-volatile memory modules face limitations in handling increased functionality requirements, leading to reduced data correctness due to resource constraints and the complexity of procedures like error correction, data scrambling, address transformation, and wear leveling.
Innovation Solution
An external processor is coupled to the non-volatile memory module's controller via a transmission interface to perform procedures such as error correction code generation, data scrambling, data restoring, address transformation, and wear leveling, thereby alleviating the burden on the controller and enhancing its resource utilization.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the non-volatile memory module handles all procedures (error correction, data scrambling, address transformation, wear leveling) internally, then the module is self-sufficient, but the controller's resources are insufficient and data correctness is reduced
Solution Approach 1:
The patent divides the processing system into two segments: the non-volatile memory module (with memory and controller) and the external processor. The controller handles basic memory management while the external processor handles complex procedures (error correction, data scrambling, address transformation, wear leveling). This segmentation allows each component to focus on specific tasks, improving overall reliability without overloading the controller.
Solution Approach 2:
The patent extracts complex processing procedures from the memory controller and relocates them to an external processor. By taking out these resource-intensive operations from the controller, the system resolves the resource constraint issue while maintaining data correctness through dedicated external processing capability.
2Adaptability or versatility
If the non-volatile memory module handles increased functionality requirements, then the module's capabilities are enhanced, but the resources required increase and capabilities are limited
Solution Approach 1:
The external processor serves as a universal resource that can handle multiple complex procedures (error correction, data scrambling, address transformation, wear leveling) that would otherwise require dedicated hardware resources within the memory module. This multi-functional approach allows the system to meet increased functionality requirements without proportionally increasing the memory module's internal resource requirements.
3Productivity
If complex procedures are handled by the controller, then data processing is integrated, but the controller's capabilities are overwhelmed and correctness is reduced
Solution Approach 1:
The external processor acts as an intermediary that handles complex procedures between the host and the non-volatile memory module. Instead of the controller being directly overwhelmed by multiple complex procedures, the external processor mediates these operations, ensuring they are performed correctly without overloading the controller's capabilities.
Data Source
AI summary
By using a processor to share certain burdens originally handled by a controller of a non-volatile memory module, the controller is able to process more complicated procedures. The procedures include an error correction code generating procedure, a data scrambling procedure, a data recovery procedure, an address translation procedure configured to translate a logical address into a physical address, and a wear leveling procedure.

