Bidirectional Data Programming in Memory Blocks for Multi-Stream Operations
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional memory systems face inefficiencies in managing multiple data streams and maintaining performance due to the need for increasing the number of open memory blocks, which leads to operational overhead and reduced durability.
Innovation Solution
The implementation of a memory system that supports multi-stream operations by using a super block scheme, where multiple memory blocks are grouped together for data programming based on data attributes, allowing for bidirectional data programming within a single open memory block to reduce the number of open blocks required.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If the number of open memory blocks is increased to support multi-stream operations, then data programming capability is improved, but operational overhead increases and durability decreases
Solution Approach 1:
The patent merges multiple data streams into a single open memory block by implementing bidirectional data programming. First data is programmed from the first page to the Nth page, and second data is programmed from the Nth page to the first page simultaneously within the same memory block, eliminating the need for separate memory blocks for each stream.
Solution Approach 2:
The patent introduces a bidirectional programming dimension within the memory block. Instead of using multiple memory blocks for different streams, the system utilizes two opposite programming directions (first page to Nth page, and Nth page to first page) within a single block, effectively adding a spatial dimension to data placement.
2Productivity
If the number of open memory blocks is increased to handle multiple data streams, then data throughput is improved, but operational overhead increases
Solution Approach 1:
The patent combines multiple data stream operations into a single memory block, allowing parallel programming of first data and second data in opposite directions. This merging approach maintains high data throughput while reducing the operational overhead associated with managing multiple separate memory blocks.
Solution Approach 2:
The bidirectional programming approach enables continuous useful action by utilizing the entire memory block simultaneously for both data streams. The first data programming from page 1 to N and second data programming from page N to 1 occur concurrently, maximizing resource utilization without interruption.
3Ease of operation
If conventional single-direction data programming is used, then memory block management is simple, but multi-stream operation efficiency is reduced
Solution Approach 1:
The patent introduces dynamic adaptability to memory block management by implementing bidirectional programming based on data attributes. The system dynamically selects programming direction and target pages based on the type and characteristics of data being stored, allowing efficient multi-stream operations while maintaining manageable complexity through attribute-based control.
Solution Approach 2:
The patent applies local quality by differentiating data programming based on data attributes. Different data types (e.g., hot, warm, cold data) are programmed in different directions and to different target pages within the memory block, optimizing performance for each data category while maintaining overall system simplicity.
Data Source
AI summary
A memory includes a memory device including plural memory blocks, each memory block including plural pages, and a controller coupled to the memory device and configured to select a target memory block among the plural memory blocks, the target memory block including a first page to an N page (N is a positive integer), and program data in the target memory block, based on a type of the data, either in a first direction from the first page to the N page or in a second direction from the N page to the first page.


