Memory Update via MLC-SLC Mode Switching and Buffer Swapping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional embedded flash technologies face challenges with high write/erase cycles and reliability, especially in high temperature environments, and emerging memory solutions lack maturity and reliability, making efficient software updates in vehicles over the air (SOTA) costly and unreliable.
Innovation Solution
The use of multi-level cells (MLCs) in memory, which can operate in both MLC-mode and SLC-mode, allows for efficient data updates by temporarily switching to MLC-mode during updates and reverting to SLC-mode for reliability, utilizing a buffer block for swapping images, thus reducing downtime and costs.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If conventional embedded flash technologies are used for memory updates, then the system can maintain simplicity in architecture, but the reliability deteriorates due to high write/erase cycles and high temperature environments
Solution Approach 1:
The memory system is segmented into two distinct memory types: MLC memory for update operations and SLC memory for reliable storage. This segmentation allows each memory type to be optimized for its specific function, with MLC handling the high-write update process and SLC providing reliable long-term storage, thereby resolving the contradiction between simplicity and reliability.
Solution Approach 2:
MLC memory acts as an intermediary during the update process. Data is first written to MLC memory which can handle high write/erase cycles, then verified and copied to SLC memory for permanent storage. This intermediary approach protects the final storage from the wear and reliability issues of frequent write operations.
2Productivity
If MLC-mode is used for memory updates, then the update efficiency and capacity improve, but the reliability worsens due to high write/erase cycle stress
Solution Approach 1:
The update process is segmented into two phases: first writing to MLC memory for efficient bulk operations, then copying verified data to SLC memory. This segmentation allows MLC to handle the productivity-demanding write operations while SLC ensures reliability for the final stored data.
Solution Approach 2:
Data is preliminarily written and verified in MLC memory before being copied to SLC memory. This preliminary action in MLC allows for efficient update operations with the ability to verify data integrity before committing to the final storage, preventing unreliable data from being permanently stored.
3Reliability
If a dual memory system with buffer block is implemented, then the update reliability improves through verification and copying processes, but the device complexity increases
Solution Approach 1:
The buffer block serves multiple functions: it temporarily holds data during updates, stores verification information, and acts as a transition area between MLC and SLC operations. This multi-functionality reduces the need for separate dedicated components for each function, thereby limiting the increase in overall system complexity.
Solution Approach 2:
The buffer block is merged with the existing memory architecture rather than being implemented as a completely separate system. The update process merges the write operation in MLC with the verification and copy operations involving the buffer and SLC, creating an integrated flow that manages complexity through unified process design.
Data Source
AI summary
A method for updating a memory, which comprises several blocks, wherein each of the several blocks comprises multi-level cells and is operable in an MLC-mode or in a SLC-mode, wherein each multi-level cell may store more than one bit, wherein the method includes for each block to be updated: (a) copying the content of the block to a buffer block; (b) erasing the block; (c) writing the content of the block from the buffer block and an updated content for this block to this block, utilizing the capability of the block to be operated in the MLC-mode; (d) copying the updated content of the block to the buffer block; (e) erasing the block; and (f) writing the updated content from the buffer block to the block, utilizing the capability of the block to be operated in the SLC-mode. Also, therefore is a corresponding device.


