NAND Flash Cache Programming to Cut Write Preparation Time
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing memory devices face inefficiencies in write performance, particularly in NAND Flash memory devices, due to long program operation times and significant preparation overhead, which is exacerbated in single-level cell (SLC) and quad-level cell (QLC) NAND Flash memory devices.
Innovation Solution
A cache program command is introduced to prepare the next program data and information during the current program and recovery operations, reducing total program time by simultaneously processing these tasks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If program operation is performed sequentially without caching next data, then program operation simplicity is maintained, but total program time increases due to preparation overhead
Solution Approach 1:
The patent applies preliminary action by caching the next program data in cache latches during the current program operation. Specifically, while the first program data is being programmed to memory cells, the second program data is pre-loaded into cache latches, so that when the first program operation completes, the second program data is already ready for immediate programming. This eliminates the preparation overhead between sequential program operations and reduces total program time.
2Productivity
If cache latches are used to store next program data, then write performance is improved, but device complexity increases
Solution Approach 1:
The patent uses cache latches as an intermediary component between the data input interface and the memory cell array. These cache latches temporarily hold program data during ongoing program operations, allowing the system to maintain high write performance by having pre-loaded data ready for immediate programming. The cache latches act as a buffer that decouples the data input rate from the program operation rate, improving overall write throughput while adding only moderate complexity through the inclusion of these cache structures.
3Loss of time
If multiple program operations are pipelined, then total program time is reduced, but preparation overhead increases
Solution Approach 1:
The patent implements continuity of useful action by ensuring that cache latches are continuously filled with next program data during ongoing program operations. The system maintains an uninterrupted flow of data preparation and programming activities - while first program data is being programmed to memory cells, second program data is simultaneously being loaded into cache latches. This continuous overlapping of preparation and execution phases eliminates idle time and maximizes program operation efficiency, reducing both preparation overhead and total program time.
Data Source
AI summary
A method of programming a memory device includes caching first program data and preparing first program information corresponding to a first program operation, performing the first program operation to a first memory cell based on the first program data, during the first program operation, caching a second program data and preparing second program information corresponding to a second program operation, and after the first program operation is completed, performing the second program operation on a second memory cell based on the second program data.


