Hierarchical Cache Occupation Bitmaps for SSD Overlap Scanning

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The large and growing overlap table in nonvolatile memory solid state drives (SSDs) leads to inefficient scanning and performance issues due to the need to track overlapping read and write commands, causing backpressure and latency, especially with increasing PCIe speeds and queue depths.

Innovation Solution

Implementing multiple cache occupation bitmaps with varying granularities based on data hotness and collision rates to dynamically and flexibly manage overlap detection, reducing the need for full-scale scans by checking bitmaps in sequence from least to most focused granularity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a large overlap table is used to track all overlapping read and write commands, then atomicity protection is improved, but scanning efficiency deteriorates and performance decreases

Engineering Contradiction:
Improveatomicity protectionVSAvoidscanning efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent divides the large overlap table into multiple smaller bitmaps organized in a hierarchical structure. Each bitmap covers a specific range of logical block addresses (LBAs) and tracks cache occupation status for that range. This segmentation allows the system to check only relevant smaller bitmaps instead of scanning the entire large table, improving scanning efficiency while maintaining complete atomicity protection.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a hierarchical dimension to the overlap tracking structure by organizing bitmaps at different levels. The first bitmap covers a broader LBA range with coarser granularity, while the second bitmap covers a subset range with finer granularity. This multi-dimensional organization enables efficient pruning of search spaces by checking higher-level bitmaps first and only descending to lower-level bitmaps when necessary.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Adaptability or versatility

If the overlap table size increases to support more parallel commands, then command handling capability is improved, but device complexity increases

Engineering Contradiction:
Improvecommand handling capabilityVSAvoidoverlap table size
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a dynamic hierarchical bitmap structure where the system can flexibly navigate through different bitmap levels based on the specific LBA range being accessed. The controller dynamically determines which bitmap level to check first and whether to proceed to deeper levels, adapting the inspection depth to the specific command being processed. This dynamic approach supports high command parallelism without requiring the entire large table structure to be actively managed.

Inventive Principle:
Principle #15Dynamics

3Measurement precision

If full-scale overlap table scanning is performed for every read command, then accurate overlap detection is improved, but latency increases

Engineering Contradiction:
Improveoverlap detection accuracyVSAvoidcommand latency
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent performs preliminary checks using the first bitmap that covers broader LBA ranges before conducting detailed checks with the second bitmap. By预先 (in advance) organizing the hierarchical bitmap structure and checking higher-level bitmaps first, the system can quickly eliminate non-overlapping cases without proceeding to full-scale scanning, thereby reducing latency while maintaining detection accuracy when overlaps do exist.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20260016987A1Flexible and Dynamic Multi-Table Overlap Cache Occupation Bitmap
Publication Date: 2026.01.15 SANDISK TECHNOLOGIES LLC
  • US20260016987A1 patent drawing
  • US20260016987A1 patent drawing
  • US20260016987A1 patent drawing

AI summary

Multiple cache occupation bitmaps are maintained with each successive bitmap having a more focused granularity based upon data hotness or overlay collisions. The bitmap with the least focus is checked first, and if a value of 1 is found for the relevant bit, then a relevant bit of the next, more focused, bitmap that encompasses the address range of the read command is checked. Relevant bits of each additional, more focused bitmap that encompasses the address range for the read command are checked in succession upon finding a value of 1 for the relevant bit in the previous bitmap. Upon the last relevant bit of a bitmap encompassing the address range of the read command having a value of 1 or 0, either a full cache scan is performed or no overlap is present. The bitmaps can be flexibly and dynamically maintained.