Parallel Overlap Table Search for NVM Read Commands
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current non-volatile memory (NVM) solid state devices face inefficiencies in processing read commands due to the need to scan large overlap tables for data, leading to increased latency and reduced bandwidth, especially at high queue depths where the existing methods are not fast enough to handle the volume of commands effectively.
Innovation Solution
Implementing a parallel search mechanism for the overlap table, allowing multiple read commands to be accumulated and searched simultaneously, rather than individually, which reduces the average search time and increases processing efficiency by optimizing the number of lines and entries scanned.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Measurement precision
If the entire overlap table is scanned for every read command individually, then overlap detection accuracy is maintained, but processing time increases and bandwidth decreases
Solution Approach 1:
The patent combines multiple individual overlap table searches into a single parallel search operation. Multiple read commands are accumulated in a command pool, and their overlap detection is performed simultaneously by scanning the overlap table once for all commands rather than individually for each command. This merging approach maintains detection accuracy while significantly improving processing bandwidth.
Solution Approach 2:
The patent performs preliminary accumulation of read commands in a command pool before executing the overlap table search. Commands are gathered and prepared in advance, allowing the system to batch process them together. This preliminary action enables the system to maintain high detection accuracy while reducing the total number of search operations required, thereby improving overall processing efficiency.
2Reliability
If the overlap table size increases to track more data ranges, then overlap detection coverage improves, but search time increases
Solution Approach 1:
The patent merges multiple search operations into a single parallel scan of the overlap table. Even as the table grows to cover more data ranges and provide better detection coverage, the system processes all read commands simultaneously in one pass through the table, preventing search time from increasing linearly with table size.
Solution Approach 2:
The patent transitions from sequential single-command processing to parallel multi-command processing by adding a dimension of simultaneity. Multiple commands are processed across the same overlap table in parallel, allowing the system to handle larger tables without proportionally increasing search time, as the parallelism compensates for the increased data volume.
3Loss of time
If read commands are processed immediately upon arrival, then latency is reduced, but overlap detection accuracy may compromise data correctness
Solution Approach 1:
The patent performs preliminary accumulation of read commands in a command pool before executing overlap detection. This preliminary batching allows the system to maintain low latency by quickly preparing commands for processing while ensuring that all necessary commands are gathered before the actual overlap check, thereby guaranteeing data correctness without significant latency penalty.
Solution Approach 2:
The patent maintains continuous processing by accumulating commands in the command pool and processing them in batches without idle waiting periods. The system continuously receives, accumulates, and processes read commands through the parallel overlap detection mechanism, ensuring both low latency and high reliability by keeping the processing pipeline full and efficient.
Data Source
AI summary
The present disclosure generally relates to searching an overlap table for data requested to be read in a plurality of read commands received. Rather than searching the table for data corresponding to each command individually, the searching occurs for the plurality of commands in parallel. Furthermore, the overlap table can comprise multiple data entries for each line. The number of read commands can be accumulated prior to searching, with the accumulating being a function of a queue depth permitted by the host device. Parallel searching of the overlap table reduces the average search time.


