Program Suspend Module for NAND Flash Memory Latency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The increasing write and erase times in NAND flash memory devices cause latency issues, blocking read operations and leading to prolonged access times, as program operations lock access to the same chip, necessitating a method to suspend program operations to allow concurrent read or erase operations.
Innovation Solution
Implementing a program suspend module that temporarily suspends program operations based on a suspend threshold, allowing read or erase operations to proceed by storing the current programming state and resuming the program at the appropriate point, thereby reducing latency and optimizing read/write times.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If program operations are performed on flash memory cells, then data can be written to storage, but read operations are blocked and access time increases significantly
Solution Approach 1:
The flash memory device is divided into multiple independent memory arrays or pages that can be accessed concurrently. The system segments the memory space and operation scope so that program operations on one segment do not block read operations on other segments, enabling parallel execution of write and read tasks.
Solution Approach 2:
The memory controller dynamically adjusts operation scheduling based on real-time status. When a program operation is detected, the system dynamically suspends it temporarily to allow concurrent read operations, then resumes the program operation after the read completes. This dynamic suspension-resume mechanism resolves the blocking issue while maintaining write integrity.
2Loss of time
If program operations are suspended to allow read operations, then read latency is reduced, but program operation completion time increases
Solution Approach 1:
The memory controller implements a feedback mechanism that monitors the status of program operations and read requests. When a read request is detected during a program operation, the controller suspends the program operation, processes the read request, and then resumes the program operation from its interrupted state. This feedback-driven suspension-resume approach ensures minimal impact on program completion while enabling concurrent read access.
3Quantity of substance
If memory element size continues to decrease, then storage density increases, but write time increases at a faster rate than read time
Solution Approach 1:
The system performs preliminary actions by buffering data in the memory controller before writing to the flash memory cells. Small data buffers are prepared in advance and can be written to memory elements in parallel or in optimized sequences, reducing the overall write time impact as element sizes continue to shrink and write operations become more time-consuming.
Data Source
AI summary
A memory device includes a memory array with a plurality of memory elements. Each memory element is configured to store data. The device includes an input/output (I/O) buffer coupled to the memory array. The I/O buffer is configured to receive data from an I/O interface of a memory device controller and write the data to the memory array. The device includes a memory control manager coupled to the memory array. The memory control manager is configured to pause a program operation to the memory array in response to receiving a pause command. The memory control manager is also configured to resume the program operation in response to receiving a resume command.


